JAVA基础学习-语法基础(2)

本文深入讲解Java中的位运算符、赋值运算符、字符串连接运算符及三目运算符等核心概念,并通过实例演示如何使用这些运算符进行编程。

2 JAVA语法基础

接JAVA基础学习-语法基础(1)运算符内容

d. 位运算符(二进制位)

可直接操作二进制&、|、~、^、>>、>>>、<<。

  1. &:按位与
  2. |:按位或
  3. ^:按位异
  4. ~:按位非
  5. >>:右移
  6. >>>:右移,左边空出的位以0填充
  7. <<:左移

e. 赋值运算符

/*
	java中赋值类运算符,两种:
	基本赋值类运算符:=
	&扩展类赋值运算符:+=,-+, *=,/=,%=
*/
public class OperatorTest01
{
	public static void main(String[] args){
		int i=7;
		i += 5;         //+= 为“追加、累加”
		System.out.println(i);

		i *= 3;
		i /= 3;
		System.out.println(i);   //12
		/*
	for (i = 1;i < 101; i +=2)
	{
		System.out.println(i);
	}
	*/
	
		//—————————————————————————重要一点的
		//加等的实际意义
		byte a = 6;
		//a = a + 6;       //编译失败,因为byte和int类型不兼容
		//b是变量,而非字面值,大容量向小容量转换需要加强制类型
		
		//修改1
		a = (byte)(a + 6);     //12, 强制类型转换语句:(byte)()
		System.out.println(a);
		//修改2
		a += 6;        //18,因此加等自带强制转换,其实际意义与“i = byte(i + 1)”相等
		System.out.println(a);
	
		int x = 11;
		long y = 22;
		y += x;
		System.out.println(y);    //33,+=自带强制类型转换

		//重要结论:扩展类的赋值类运算符不改变运算结果类型,若最初类型为long,那么追加依然为long类型
		
	}
}

f. 字符串连接运算符

/*
		字符串的连接运算符:
		1、java中的“ + ”号运算符:
			作用1:求和; " + "两边都为数字
			作用2:字符串的连接运算; " + "有一边为字符串,且运算结果为字符串类型
		2、数字 + 数字 ---> 【数字】
		         数字 + 字符串 ---> 【字符串】
		3、 一个表达式多个加号,没有括号的话,遵循自左向右依次执行运算
*/
public class OperatorTest02
{
			public static void main(String[] args){
						
				int a = 11;
				int b = 22;
				System.out.print(a + "+" + b  + "=" + (a+b));
				//引用类型String
				//String是javaSE提供的字符串类型,String.class字节码文件
				int i = 23;
				//String s = "zzy";      //引用数据类型
				String userName = "ZhangSan";
				System.out.println("\n\nWelcome,"+ userName +"!");
            }
}

g. 三目运算符/三元运算符/条件运算符

/*
	三元运算符/三目运算符/条件运算符
	1、语法规则:
		布尔表达式  ?  表达式1 :表达式2
2、三元运算符的执行原理?
	--->当布尔表达式的结果是true的时候,选择表达式1作为整个表达式的运行结果
	--->结果为false,选择表达式2作为整个表达式的运行结果
*/
public class OperatorTest03
{
	public static void main(String[] args){
		boolean result = false;
		
		//表达式处不填语句
		//判断结果需要赋值给变量存储
		
		String s = result  ?  "get" : "lost" ;
		System.out.println(s);

		char k = result  ?  'A' : 'B';
		System.out.println(k);

		//表达式类型需要和声明的被赋值的变量类型保持一致
		//而输出语句可以
		System.out.println(result  ?  "gets" : 'B' );    //输出语句可以兼容不同类型
	}
}

8 、控制语句

java控制语句7种:

if、if else;              switch;         //控制选择结构语句

for;                        while;           //控制循环结构语句

do while;

break;                   continue;      //改变控制语句

(1)if语句

接收键盘输入

/*
	输出:System.out.println();   [从内存到控制台,输出的过程]
	输入:接受用户键盘输入,[从“键盘”到“内存”;到内存中去]
*/
public class KeyInputTest
{
	public static void main(String[] args){
		//Step1:创建键盘扫描器对象
		java.util.Scanner s = new java.util.Scanner(System.in);
		//Step2:调用Scanner对象的next()方法开始接收用户键盘输入
		//程序此处会停止,等待用户操作输入
		//当用户输入完毕,按下回车键,输入信息会赋值给userInputContent

		//当下用户输入的信息进入到内存中,
		//接收文本:以字符串的形式接收文本

		String userInputContent = s.nextLine(); //输入“abc”则字符串赋值给s.next()完毕
		//s.next()不接受输入的字符串空格后面的字符串,s.nextLine()会接受空格

		//内存中的数据到控制台
		System.out.println("您输入了: "  + userInputContent);    // 空格后面的不包括在内
		
		/*接受数字[以整数型int的形式来接收]
		int num = s.nextInt();
		System.out.println("您输入的数字是: " + num);
		*/
	}
}
  1. java.util.Scanner s = new java.util.Scanner(System.in);   //创建键盘扫描器对象
  2. String userInputContent = s.nextLine();      //定义接收的内容为字符串
  3. System.out.println(“您输入的内容为: ” + userInputContent);   //输出内存内容到控制台
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值