目录
一.运算符的描述及例子
1.算术运算符
自增的概念:a++为先输出结果,再进行a=a+1的运算;++a为先进行运算再输出结果
自减的概念:a--为先输出结果,再进行a=a-1的运算;--a为先进行运算再输出结果
2.关系运算符
3.位运算符
4.逻辑运算符
5.赋值运算符
6.条件运算符,三元运算(重要!!)
(布尔条件表达式)?(表达式1):(表达式2)
条件表达式若为true则取值表达式1,否则取值表达式2
二.课后作业及心得
1.九九乘法表的实现
package com.company.table;
public class Table {
public static void main(String[] args) {
for(int i=1;i<=9;i++) {
for (int j = 1; j <=i ; j++) {
System.out.printf(j+ "*" + i + "=" + j* i + "\t");
}
System.out.println();
}
}
}
for循环中的嵌套用法,一次for循环中如果还有循环,则先把次级循环全部执行完毕,再执行主循环的第二次循环,以此类推。例如此代码中首先声明并赋值i = 1,此时判断i的值是否小于等于9,并进入次级循环执行一个赋值j=1,判断此时j是否小于等于i的值,然后输出i*j= ,然后执行j++ ,循环完毕,再执行主循环的i++,以此类推直到循环条件不满足,循环完毕。
2.输入一个四位数,求各位数字之和
package com.company.sum;
import java.util.Scanner;
public class SumTest {
public static void main(String[] args) {
System.out.println("请输入一个四位数");
Scanner scan = new Scanner(System.in);
String str = scan.next();
Integer a = Integer.valueOf(str);
int b = 0;
if(a>=1000&&a<=9999){
while (a!=0){
b=b+a%10;
a=a/10;
}
System.out.println("四位数字相加的和为:"+b);
}else if(a<1000||a>10000){
System.out.println("你输入的数不是四位数!!");
}
}
}
首先我们要知道的是题目要求我们输入的数字为一个四位数,所以我们首先需要判断的的是输入的数字是否为一个四位数,那么为了完成这个功能我用if的判断语句来确定我的数字是否在4位数的一个范围(1000~9999) ,如果我们输入的不是一个四位数那么直接跳入else if的语句中 输出”你输入的数不是四位数“。如果我们输入的在判断范围内则需要开始计算,计算功能我用while语句实现
我把判断的指标定为输入的数经过计算最后是否为0
先定义一对象b 并赋予初始值为0
b=b+a%10 -------- 此行的目的是计算出处于每个数的最后余的那个数字
a=a/10 --------------此行的目的是求出下一位数
package com.company.table;
import java.util.Scanner;
public class if_test {
public static void main(String[] args) {
while (true) {
System.out.println("☆☆十进制转换二进制系统☆☆" + "\n");
while (true) {
System.out.println("请输入一个byte类型的数:");
Scanner scan = new Scanner(System.in);
String str = scan.next();
Integer a = Integer.valueOf(str);
byte b = -128;
byte e = 127;
String f = "";
if (a >= b && a <= e) {
while (a != 0) {
f = a % 2 + f;
a = a / 2;
}
System.out.println("转换完的二进制为" + f+"\n");
} else if (a < b || a > e) {
System.out.println("输入的数不是byte类型,无法转换!!!"+"\n");
}
}
}
}
}
其实这道题让你输入byte类型的数,无非可以转化为判断输入的数字是否在byte的取值范围内(-127~128)有了这个思路这道题就好解决了。
通过if和else if语句判断输入的数,不在区间范围的直接Pass掉进入else if 输出”输入的数不是byte类型,无法转换!!!“
在区间范围的进入if语句中的while循环中,给定我们输入的数a最后被计算加工处理为0时跳出循环,在此之中我们可以先设定一个空的字符串用来实现后面的字符连接,输入的a进行a%2的取余计算,并通过f = a%2 + f 连接 就这样这道题就解决了