条件选择结构
数字交换
直接看代码:
整形a和double型b交换
public class Test1{
public static void main(String[] args){
int a =3;
double b = 3.9;
int c;
double d;
c = a;
d = (double)a;//强制交换a赋值给double d
d= b;
b = (double)c;
System.out.println("a is\t"+d);
System.out.println("b is\t"+b);
}
}
boolean数据类型和关系运算符
数据类型:int double String char 现在增加一个布尔类型:boolean
boolean类型,数值只有:true、false
关系运算符:
< > <= >= == !=
代码实例:
public class Test{
public static void main(String[] args){
double a =9.0;
int b= 4;
boolean c = a>b;
System.out.println(c);
}
} //结果是true
if判断语句
if (boolean) {
boolean = true,执行大括号里面的。
}
else{
false 执行这里的
}
import java.util.*;
public class Test{
public static void main(String[] args){
Scanner in;
in = new Scanner(System.in);
System.out.println("input your score\t:");
int score = in.nextInt();
if(score >= 90){
System.out.println("good!!");
}
else{
System.out.println(" your score not good ;");
}
}
}
逻辑运算符号
- && 和,两个条件为true结果为true
- || 或,只要一个条件是true结果就是true
- ! 取反,条件true,结果false
import java.util.*;
public class Test{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("input a value:");
int a = in.nextInt();
System.out.println("input b value:");
int b = in.nextInt();
if(!(a>50)&&b >50){ //逻辑运算符用于boolean数据类型的,用在if条件里面
System.out.println("a、b >50");
}
else{
System.out.println("00000000000000");
}
}
}
运算符的优先级3
。。。
多重if结构和if嵌套结构
if(){}else if(){}...else{}
import java.util.*;
public class Test1{
public static void main(String[] args){
Scanner in;
in = new Scanner(System.in);
System.out.println("input score:");
double score = in.nextDouble();
if(type(score)==int||double||float){ //Java中判断数据类型的函数是?Python是type()
if(score>=90){
System.out.println("your are good,your score is "+score);
}
else if(score>=80){
System.out.println("lianghao");
}
else if(score>=60){
System.out.println("jige");
}
else{
System.out.println("bad score");
}
}
else{
System.out.println("input number please!!!!");
}
}
}
if嵌套
import java.util.*;
public class Test2{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("input your sex(boy or girl)");
String sex = in.next();
if(sex.equals("boy")){ //字符串作比较,判断字符串是否相同;==>需要比较的字符串.equals("String")不能使用比较运算符 “==”
System.out.println("how old are you?");
int age = in.nextInt();
if(age >= 20){
System.out.println("old boy!!!");
}else{
System.out.println("little boy .........");
}
}else{
System.out.println("hi mei nv!");
}
}
}
字符串作比较:
//字符串作比较,判断字符串是否相同;==>! 需要比较的字符串.equals("String")不能使用比较运算符 “==”
switch判断
语法:
switch(int/char类型){ //switch结构中小括号只能出现int类型和char类型
case 常量: //case的个数可以随便定义,但后面一定要跟常量
执行语句;
break;
case 常量:
执行语句;
break;
default:
执行语句
}
实例、:
import java.util.*;
public class switch1{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("what is your mingci");
int mingci = in.nextInt();
switch(mingci){
case 1:
System.out.println("9999");
break;
case 2:
System.out.println("8888");
break;
default:
System.out.println("ooooooooooooooo");
}
}
}
取随机数方法
//取随机数两种方法
import java.util.Random; //注意大写
public class Test5{
public static void main(String[] args){
Random n = new Random(); //和Java的Scanner一样,需要先声明
int a = n.nextInt(100); //取0~99的随机数,结果是整数
System.out.println(a);
}
}
//可以支持多线程
public class Test5{
public static void main(String[] args){
double a = Math.random()*100; //注意小写。取0~99的随机数,结果是double的需要强制转换就能输出int了
System.out.println((int)a);
}
}
猜拳游戏
和计算机比较猜拳游戏:
import java.util.*;
public class game{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("-----gameStart------");
System.out.println("input one of 3 number:1 scissor 2 stone 3 paper");
int person = in.nextInt(); //接收用户输入的整数,这里只能输入整数,输入其他类型,接收不了会报错;
//String a = in.next();
//double b = in.nextDouble();
String mark1 = "test"; //标记
if(person != 1&& person != 2&& person != 3) //判断用户输入的数,只能在是1 2 3
{
System.out.println("pleas send number in 1 2 3");
}
else
{
switch(person)
{
case 1:
mark1 = "scissor";
break;
case 2:
mark1 = "stone";
break;
case 3:
mark1 = "paper";
break;
}
int computer = (int)(Math.random()*3) + 1;
String mark2 = "test2";//标记
switch(computer)
{
case 1:
mark2 = "scissor";
break;
case 2:
mark2 = "stone";
break;
case 3:
mark2 = "paper";
break;
}
if(person==computer) //平局情况
{
System.out.println("you is "+mark1+" computer is "+ mark2+" piju =_=!!");
}
else if(person==1&&computer==2||person==2&&computer==3||person==3&&computer==1)//计算机赢了的情况
{
System.out.println("you is "+mark1+" computer is "+ mark2+" computer win,OoO");
}
else //人赢了的情况
{
System.out.println("you is "+ mark1+" computer is "+mark2+" you win haha");
}
}
}
}