三元运算符和this

2024-06-19 11:32
文章标签 运算符 三元

本文主要是介绍三元运算符和this,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

三元运算

语法:

判断语句   ?   表达式1   :   表达式2

三元运算会得到一个结果,通常用于对某个变量进行赋值,当判断条件成立时,运算结果为表达式1的值,否则结果为表达式2的值。

this

this关键字在程序中的三种常见用法:

  1. 通过this关键字可以明确地去访问一个类的成员变量,解决与局部变量名称冲突问题。

public class JBTest_002 {

int age;

public JBTest_002(int age) {

this.age = age;

}

public int getAge() {

return this.age;

}

}

  1. 通过this关键字调用成员方法。

public class JBTest_002 {

public void openMouth() {

}

public void speak() {

this.openMouth();

}

}

  1. 构造方法是在实例化对象时被Java虚拟机自动调用的,在程序中不能像调用其他一样去调用构造方法,但可以在一个构造方法中使用“this( [ 参数1 , 参数2….. ] )”

public class JBTest_002 {

public JBTest_002() {

this("zl");

System.out.println("无参的构造方法");

}

public JBTest_002(String name) {

System.out.println("有参的构造方法");

}

}

class ttt {

public static void main(String[] args) {

JBTest_002 test_002 = new JBTest_002();

System.out.println(test_002);

}

}

在使用this调用类的构造方法时,应注意以下几点。

  1. 只能在构造方法中使用this调用其他的构造方法,不能在成员方法中使用。
  2. 在构造方法中,使用this调用构造方法的语句必须位于第一行,且只能出现一次,下面的写法是非法的。

public JBTest_002() {

String name = "zl";

this(name);

}

  1. 不能在一个类的两个构造方法中使用this互相调用。

public class JBTest_002 {

public JBTest_002() {

this("zl");

System.out.println("无参的构造方法");

}

 

public JBTest_002(String name) {

this();

System.out.println("有参的构造方法");

}

}


这篇关于三元运算符和this的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1074909

相关文章

JavaSE (Java基础):运算符

3 运算符 3.1 二元运算符         为什么下面这段代码中最后的语句中b元素要加(double)呢?         因为要计算10/40的话,他们都是int类型的在计算机中会取整,而计算机取整一般都是直接舍去小数点后面的数字,那么就会返回0,使用(double)就是将b元素强制转换为double类型的变量,返回的值也就好也是double类型的了,直接返回结果为0.5 pac

python中的*运算符

问题: self.resblocks = nn.Sequential(*[ResidualAttentionBlock(width, heads, attn_mask) for _ in range(layers)]) 这个里面的*是什么意思? 在 Python 中,* 运算符可以用于在函数调用时解包(unpack)列表或元组。这在构建 nn.Sequential 模块时尤其有用,因为 nn

运算符重载(重载为成员函数)

运算符重载 – 基本概念 郭  炜  刘家瑛 #include <iostream>using namespace std;//运算符重载,重载为成员函数.class complex{private:double real;double img;public:complex(int i=0.0,int j=0.0):real(i),img(j){}~complex(){}v

运算符重载(重载为普通函数)

运算符重载 – 基本概念 郭  炜  刘家瑛 #include <iostream>using namespace std;//this指针的应用class complex{private:double real;double img;public:complex(int i=0.0,int j=0.0):real(i),img(j){}~complex(){}void pr

C语言六种“位运算符”

C语言提供了六种位运算符: & 按位与 | 按位或 ^ 按位异或 ~ 取反 << 左移 >> 右移   1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。 参与运算的数以补码方式出现。 例如:9&5可写算式如下: 00001001

表达式求值(无括号、无空格、每个数0-9、有运算符优先级)

/*表达式求值(无括号、无空格、每个数0-9、有运算符优先级)简单四则运算问题描述:输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值注1、表达式只含 +, -, *, / 四则运算符,不含括号2、表达式数值只包含个位整数(0-9),且不会出现0作为除数的情况3、要考虑加减乘除按通常四则运算规定的计算优先级4、除法用整数除法,即仅保留除法运算结果的整数部分。比如8/

C++拷贝构造函数、运算符重载函数、赋值运算符重载函数、前置++和后置++重载等的介绍

文章目录 前言一、拷贝构造函数1. 概念2. 特征3. 编译器生成默认拷贝构造函数4. 拷贝构造函数典型使用场景 二、运算符重载函数三、赋值运算符重载函数1. 赋值运算符重载格式2. 赋值运算符只能重载成类的成员函数不能重载成全局函数3.编译器生成一个默认赋值运算符重载 四、前置++和后置++重载总结 前言 C++拷贝构造函数、运算符重载函数、赋值运算符重载函数、前置++和后

正则表达式各个符号总结以及运算符优先级(2)

正则表达式 - 元字符 下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也

Java比较运算符

关系运算符和比较运算符适用于条件判断类型。 相当于布尔值,只有True和False两个 符号 说明== a==b,判断a的值是否等于b的值,条件成立为true,不成立为false!= a!=b,判断a和b的值是否不相等,条件成立为true,不成立为false> a>b,判断a的值是否大于b的值,条件成立为true,不成立为false<

Java之运算符,位运算(源码反码补码)和基本数据类型

文章目录 1 java运算符1.1 各个运算符一览1.2 部分运算符说明1.3 java基本位操作1.3.1 位操作符号1.3.2 原码反码补码1.3.2.1 相关定义1.3.2.2 为何要使用原码, 反码和补码1.3.2.3 负数运算1.3.2.4 转换16进制为什么需要 &0xff 1.3.3 常用的位运算符运算1.3.3.1 左右位移 2 基本数据类型 1 java运算符