Java基础知识复习–day04

1.位运算符有哪些?

在这里插入图片描述

2.以下程序的运行结果是什么?
public static void main(String[] args) {
  int x=-2;
  System.out.println(x>>1);
 }

结果为:-1

3.使用位运算的方式实现存储的位置互换
public static void main(String[] args) {
  int num1=12;
  int num2=13;
  num1=num1^num2;
  num2=num1^num2;
  num1=num1^num2;
  System.out.println(num1);
  System.out.println(num2);
 }
4.运算符的优先级别

在这里插入图片描述

5.流程控制分为哪几个基本结构?

1)顺序结构
2)分支结构
3)循环结构

6.java中的分支结构分为哪两种?

1)if(){} else(){}
2)switch(){case:;break;…;defalut:;}

7.从显示器输入字符串、int、double、boolean、char并显示
import java.util.Scanner;
public class JavaDocTest {
 public static void main(String[] args) {
  Scanner scan=new Scanner(System.in);
  System.out.println("请输入你的姓名:");//System.out.println("");
  String name=scan.next();
  System.out.println("您输入的姓名为:"+name);
  System.out.println("请输出您的年龄:");
  int age=scan.nextInt();
  System.out.println("您输入的年龄为:"+age);
  System.out.println("请输入您的体重");
  double weight=scan.nextDouble();
  System.out.println("您输入的体重为:"+weight);
  System.out.println("你是否相中了我呢?(true/false)");
  boolean isLove=scan.nextBoolean();
  System.out.println("请输入您的性别");
  String gender=scan.next();
  char genderChar=gender.charAt(0);
  System.out.println("您的性别是"+gender);
 }
}
8.判断如下代码的运行结果

1)boolean b = true;
if(b == false)
System.out.println(“a”);
else if(b)
System.out.println(“b”);
else if(!b)
System.out.println(“c”);
else
System.out.println(“d”);
2)如果写成if(b=false)能编译通过吗?如果能,结果是?
答案:
1)b
2)c

9.如何获取随机数10-99?
int value=(int)(Math.random()*90+10);

总结:公式[a,b]:(int)(Math.random()*(b-a+1)+1)

10.回忆switch case语句的写法?
public static void main(String[] args) {
  int number=1;
  switch(number) {
  case 0:
   System.out.println("zero");
   break;
  case 1:
   System.out.println("one");
   break;
  case 2:
   System.out.println("two");
   break;
  case 3:
   System.out.println("three");
   break;
  default://位置可以随意的
   System.out.println("other");
  }
 }
11.switch结构中的表达式,只能使用哪几种数据类型?

byte、short、char、int、枚举类型(JDK5.0)、String(JDK7.0)

12.使用switch 把小写类型的char型转为大写。只转换a, b, c, d, e. 其它的输出不变”。
public static void main(String[] args) {
  Scanner scan=new Scanner(System.in);
  System.out.println("请输入字符:");
  String msg=scan.next();
  String msgTemp="";
 for(int i=0;i<msg.length();i++)
  {
   switch(msg.charAt(i)) {
   case 'a':msgTemp=msgTemp+'A';
     break;
   case 'b':msgTemp=msgTemp+'B';
     break;
   case 'c':msgTemp=msgTemp+'C';
     break;
   case 'd':msgTemp=msgTemp+'D';
     break;
   case 'e':msgTemp=msgTemp+'E';
     break;
   default:msgTemp=msgTemp+msg.charAt(i);
   }
  }
  System.out.println(msgTemp);
 }
13.对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”。
int score = 78;
  switch(score / 10){
  case 0:
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:
   System.out.println("不及格");
   break;
  case 6:
  case 7:
  case 8:
  case 9:
  case 10:
   System.out.println("及格");
   break;
  }
  //更优的解决方案:
  switch(score / 60){
  case 0:
   System.out.println("不及格");
   break;
  case 1:
   System.out.println("及格");
   break;
  }
14.编写程序:从键盘上输入2019年的“month”和“day”,要求通过程序输出输入的日期为2019年的第几天。
public static void main(String[] args) {
  Scanner scan = new Scanner(System.in);
  System.out.println("请输入2019年的month:");
  int month = scan.nextInt();
  System.out.println("请输入2019年的day:");
  int day = scan.nextInt();
  int sumDays = 0;
  switch(month){
  case 12:
   sumDays += 30;
  case 11:
   sumDays += 31;
  case 10:
   sumDays += 30;
  case 9:
   sumDays += 31;
  case 8:
   sumDays += 31;
  case 7:
   sumDays += 30;
  case 6:
   sumDays += 31;
  case 5:
   sumDays += 30;
  case 4:
   sumDays += 31;
  case 3:
   sumDays += 28;
  case 2:
   sumDays += 31;
  case 1:
   sumDays += day;
  }
  System.out.println(sumDays);
 }
15.java中循环分为哪几类?

1)for 循环
2)while 循环
3)do-while 循环

16.循环语句的四个组成部分是什么?

1)初始化部分(init_statement)
2)循环条件部分(test_exp)
3)循环体部分(body_statement)
4)迭代部分(alter_statement)

17.查看如下代码运行结果:

int num = 1;
for(System.out.print(‘a’);num <= 3;System.out.print(‘c’),num++){
System.out.print(‘b’);
}
输出结果:abcbcbc

18.在移位数运算符中,a>>b或者a<<b是如移位的?

如果int类型,b>32,则a>>(b%32);
如果Long类型b>64,则a>>(b%64)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值