Java基础语法之变量作用域、小大驼峰命名规则和java运算符(赋值、关系、三元、逻辑运算符)

一、变量定义的注意事项及作用域

1、定义时的注意事项

  • 变量名不允许重复定义

  • 一条语句可以定义多个变量,但需要使用逗号进行分割,同时还必须是同一个类型的多个变量。

  • 变量在使用(如输出)之前,必须进行赋值
    定义float变量时,必须在数值后面加上一个F;定义ling变量时,必须在数值后面加上一个L

2、变量的作用域
只在所定义的大括号里面是有用的,即所定义的函数中才有用(主函数的局部变量),其他函数中不能用。

3、江湖命名规则(小驼峰、大驼峰)
(1)小驼峰命名——用于方法、变量的命名

  • 约定1 :标识符是-个单词的时候,首字母小写
    范例1 : name
  • 约定2:标识符由多个单词组成的时候,第一 个单词首字母小写,其他单词首字母大写
    范例2 : firstName

(2)大驼峰命名法——用于类的命名

  • 约定1 :标识符是一个单词的时候,首字母大写
    范例1 : School
  • 约定2 :标识符由多个单词组成的时候, 每个单词的首字母大写
    范例2 : HighSchool

二、键盘输入

1、输入步骤
(1)导包:需要写在public class的上面,输入import java.util.scanner;

(2)创建对象:scanner ss = new scanner (Syatem.in) ;
只有ss可以改变,其他都必须严格输入,因为ss是对象名(java可以有多个对象)。

(3)使用变量接收数据,int a = ss.nextInt();
只有a变量可以改变,其他属于固定格式,意思是调用对象ss中的方法nextInt,获取一个int类型变量。

2、练习代码

import java.util.Scanner;
public class Test01{
    
    
	public static void main(String[] args){
    
    
		Scanner ss = new Scanner(System.in);  //由Scanner类创建一个对象,名为ss
		int a = ss.nextInt();  //调用对象ss的方法nextInt,返回结果给int类型变量a
		System.out.println(a);  //输出变量a
	}	
}

三、Java运算符

1、运算符与表达式

  • 运算符:对常量或者变量进行操作的符号
  • 表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。

不同运算符连接的表达式体现的是不同类型的表达式。

2、算数运算符

(1)就是简单的加减乘除(+ - * / %),%是取余,也就是取除法运算结果的余数。

(2)从键盘获取一个四位数整数,将该整数的个位、十位、百位、千位都分别打印出来。

import java.util.Scanner;
public class Test01{
    
    
	public static void main(String[] args){
    
    
		Scanner ss = new Scanner(System.in);  //由Scanner类创建一个对象,名为ss
		int a = ss.nextInt();  //调用对象ss的方法nextInt,返回结果给int类型变量a
		System.out.println(a);  //输出变量a
		//通过运算,得到个位、十位、百位、千位
		int u1 = a%10;
		System.out.println("个位:" + u1);
		int u2 = a/10%10;
		System.out.println("十位:" + u2);
		int u3 = a/100%10;
		System.out.println("百位:" + u3);
		int u4 = a/1000%10;
		System.out.println("千位:" + u4);
	}	
}

3.2.1

3、自增、自减运算符

(1)++/–在前,先对变量做自增/自减,再进行其他操作。
++/–在后,先进行其他操作,再对变量做自增/自减。

public class Test01{
    
    
	public static void main(String[] args){
    
    
		int a0 = 10;
		int b0 = a0++;
		System.out.println(a0);  //输出变量a0
		System.out.println(b0);  //输出变量a0
		
		int a1 = 10;
		int b1 = a0--;
		System.out.println(a1);  //输出变量a0
		System.out.println(b1);  //输出变量a0
	}	
}

3.3.1

(2)输出时自增

public class Test01{
    
    
	public static void main(String[] args){
    
    
		int a0 = 10;
		System.out.println("++在前:" + (++a0));  //输出变量a0
		System.out.println(a0);  //输出变量a0
		
		int a1 = 10;
		System.out.println("++在后:" + (a1++));  //输出变量a0
		System.out.println(a1);  //输出变量a1
	}	
}

3.3.2

4、赋值运算符

(1)运算符类型
3.4.1
(2)自增/自减会默认转换类型

  • 不兼容的类型需要进行强制转换,未强制转化类型,会报错:
		short a = 10;
		a = a+1;
		System.out.println("++在前:" + a);  //输出变量

3.4.1

  • 修改后:
public class Test01{
    
    
	public static void main(String[] args){
    
    
		short a = 10;
		a = (short)(a+1);
		System.out.println("强制转换之后:" + a);  //输出变量
	}	
}
  • 使用赋值运算符的方法则不需要考虑强制转换
public class Test01{
    
    
	public static void main(String[] args){
    
    
		short a = 10;
		a+=1;
		System.out.println("强制转换之后:" + a);  //输出变量
	}	
}

3.4.2

5、关系运算符

(1)包括:>、 <、 ==、 >=、 <=、!=,返回值是一个布尔值,表示true或者false。

(2)测试练习

public class Test01{
    
    
	public static void main(String[] args){
    
    
		System.out.println("10>10:" + (10>10)); 
		System.out.println("10<10:" + (10<10)); 
		System.out.println("10==10:" + (10==10)); 
		System.out.println("10>=10:" + (10>=10)); 
		System.out.println("10<=10:" + (10<=10)); 
		System.out.println("10!=10:" + (10!=10)); 
	}	
}

3.5.1

6、三元运算符

(1)解析int max = a>b?a:b;
表示如果a>b,则把a的值赋值给max,如果a不是大于b(即b>a),则把b的值赋值给max。

(2)找出三个数的最大值

public class Test01{
    
    
	public static void main(String[] args){
    
    
		int a=156, b=32, c=888;
		//综合写法(不建议,因为不方便阅读):
		int max = (a>b?a:b)>c ? (a>b?a:b):c;
		System.out.println("不建议写法:" + max);
		//建议写法
		max= a>b?a:b;
		max= max>c?max:c;
		System.out.println("建议写法:" + max); 		
	}	
}

3.6.1

7、逻辑运算符

(1)基本运算符:与、或、非、异或(&、|、!、^)

(2)短路逻辑运算符
3.7.1

  • &&短路意思就是,当左边的判断条件为假时,就不执行后面的判断语句,所以后面的自增自减或其他运算等操作都将是无效的。

  • ||短路意思就是,当左边的判断条件为真时,就不执行后面的判断语句,所以后面的自增自减或其他运算等操作都将是无效的。

(3)短路练习

public class Test01{
    
    
	public static void main(String[] args){
    
    
		int a=5;
		int b=10;
		System.out.println("&&短路:" + ((++a > 6)&&(b--==9))); 
		System.out.println("a=" + a); 
		System.out.println("b=" + b); 		
		
		int c=5;
		int d=10;
		System.out.println("||短路:" + ((++c > 5)||(d--==9))); 
		System.out.println("c=" + c); 
		System.out.println("d=" + d);
	}	
}

3.8.1
很显然,变量b和d都被短路了,还是原来的10,没有执行自减运算。

猜你喜欢

转载自blog.csdn.net/Viewinfinitely/article/details/119855283