java 流程控制(1)

1.数据类型转换
整型:默认是int型,byte short int long
浮点型:默认是double型,float double
(1)自动类型转换(隐式):
目标类型的取值范围要大于源类型
a.byte short char 之间不存在数据类型转换,运算时通过int计算
b.byte short char —>int —>long—>float---->double
byte b=123;// -128 127
//出错b=b+12;//因为12默认是int型,b+12结果自动转换为int(两步操作)
b+=256;//ok +=赋值运算符(一步操作)

	byte b=123;
    //short s=b+12;错 b+12 是int,不能直接转换成short
	//char s=b+12;错 //b+12 是int,不能直接转换成char
	
	long s=b+12; //b+12 是int,自动转成long
	float f=s+23; //s+23是long,自动转成float
	double d=f+12; //f+12是float,自动转成double
(2)强制类型转换(显式)
    在长度容量小的变量中存放长度大的值,可能会导致精度降低
	double d=3.14;
   f=(float)(d+21);

2.三元表达式(三目运算)
表达式: 12+34 a+32 i++ --a
三元表达式:3个表达式
格式: 表达式1?表达式2:表达式3
【注意】表达式1必须是布尔值(true,false比较运算,逻辑运算)
表达式1的值为true,整个式子结果:表达式2的值
表达式1的值为false,整个式子结果:表达式3的值
String s= 10>9?“hello”:“java”; //hello
int i= false?1:10;//10
int x=!(5>6)?‘A’:‘B’; //65
//int y=~5^32>?‘A’:‘B’; 错误 ~5^32值是数字不是布尔型

 //下列代码有误,:前后应该是表达式,不能是语句
 12<9&&3>4?System.out.println("hello"):System.out.println("java")
 应改为
 System.out.println(12<9&&3>4?"hello":"java")

3.流程控制:
两类:顺序结构(条件语句)
循环结构(循环语句)
(1)顺序结构
if(条件){
//满足该条件执行的语句
}else{
//不满足该条件执行的语句
}

 if(条件1){ 
 }else if(条件2){
 }else if(条件3){
 }
 。。。。
 else if(条件n){
 }else{
 }

5.控制台输入信息
(1)导包
import java.util.Scanner;
(2)创建输入对象
Scanner sc=new Scanner(System.in);
(3)调用方法
next()字符串
nextInt()整型int
nextFloat()浮点型float
nextDouble()浮点型 double

// 输入:借用输入设备
Scanner sc=new Scanner(System.in);
//信息:整数 小数 字符串 true
System.out.println(“请输入字符串”);
// 字符串
String str=sc.next();// 遇到空格 回车 tab停止扫描
System.out.println(“您输入的是”+str);
//输入整数
int x=sc.nextInt();
System.out.println(“您输入的是”+x);
//输入小数
float f=sc.nextFloat();
System.out.println(“您输入的是”+f);
//输入布尔型
boolean b=sc.nextBoolean();
System.out.println(f);

6.随机数
// 随机数–对象
Random rm=new Random();
int x= rm.nextInt(11); //11表示11以内的整数 [0,3)
double d=rm.nextDouble()*1000;

    System.out.println(x);
   System.out.println(d);
   
   //数学中随机数
   double y=Math.random()*100;//  0-1
   System.out.println((int)y);
发布了21 篇原创文章 · 获赞 11 · 访问量 349

猜你喜欢

转载自blog.csdn.net/weixin_41050494/article/details/103905639