值交换:(1)采用中间变量来进行值交换。
(2)采用位异或来运算,来交换值。
(3)采用±运算。
三目运算符:语法:表达式?结果1:结果2
如果表达式的结果是true,返回结果1;如果是false,返回结果2.
package org.westos.demo2;
public class MyDemo {
public static void main(String[] args) {
int a=10;
int b=20;
//值交换
int t=a;
int a1=b;
int b1=t;
System.out.println("a1="+a1);
System.out.println("b1="+b1);
//三目运算符
int c=10;
int d=20;
System.out.println(c>d?c:d);
}
}
键盘录入:从键盘上录入用户的数据。
(1)导入包(2)创建scanner对象(3)提示用户(4)获取用户输入的整数
package org.westos.demo2;
import java.util.Scanner;
public class MyDemo3 {
public static void main(String[] args) {
//alt+enter 万能纠错键 自动补全上面import这句话
//ctrl+alt+v 自动补全下面这句话
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个数");
int a1=scanner.nextInt();
System.out.println("请输入第一个数");
int a2=scanner.nextInt();
System.out.println("请输入第一个数");
int a3=scanner.nextInt();
}
}
package org.westos.demo4;
import java.util.Scanner;
public class MyDemo2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//请输入月份
System.out.println("请输入月份1--12");
int month=scanner.nextInt();
switch (month)
{
case 3:
case 4:
case 5:
System.out.println("春季");
break;
case 6:
case 7:
case 8:
System.out.println("夏季");
break;
case 9:
case 10:
case 11:
System.out.println("秋季");
break;
case 12:
case 1:
case 2:
System.out.println("冬季");
break;
}
}
}
(1)求1--100以内的奇数,偶数和。
案例程序分析1:
package org.westos.demo4;
public class MyDemo3 {
public static void main(String[] args) {
//1--100以内的奇数和
int sum=0;
//快捷键生成for循环100.fori
for (int i = 1; i <=100; i=i+2) {
sum=sum+i;
}
System.out.println(sum);
System.out.println("=================");
//1--100以内的偶数和
int num=0;
for (int i = 0; i <=100; i=i+2) {
num=num+i;
}
System.out.println(num);
}
}
案例程序分析2:
package org.westos.demo4;
public class MyDemo4 {
public static void main(String[] args) {
//计算1--100以内的奇数偶数和
int sum=0;
int sum1=0;
//快捷键生成for循环体 100.fori
for (int i = 0; i <= 100; i++) {
if(i%2==1) {
sum+=i;
}else{
sum1+=i;
}
}
System.out.println("sum="+sum);
System.out.println("sum1="+sum1);
}
}
(2)将1--10和10--1列出来
案例程序分析:
package org.westos.demo4;
public class MyDemo5 {
public static void main(String[] args) {
//将1--10列出来
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
System.out.println("================");
//将10--1列出来
//快速生成for循环体10.forr
for (int i1 = 10; i1 >= 1; i1--) {
System.out.println(i1);
}
}
}
(3)计算所有的水仙花数
案例程序分析:
package org.westos.demo4;
public class MyDemo6 {
public static void main(String[] args) {
//输出所有的水仙花数
//水仙花数必须得是三位数,因此限定范围为100--999
//输出个位数:153%10
//输出十位数:153/10%10
//输出百位数:153/100
System.out.println("请输出所有的水仙花数");
int ge;
int shi;
int bai;
int count=0;
for (int i = 100; i <= 999; i++) {
ge = i % 10;
shi = i / 10 % 10;
bai = i / 100;
//求每个字位上的立方和
int number=ge*ge*ge+shi*shi*shi+bai*bai*bai;
//判断是否为水仙花数
if(i==number){
System.out.println("水仙花数为:"+i);
count ++;
}
}
System.out.println("水仙花数总共有:" + count + "个");
}
}
while循环语句
do{循环体}while{条件}
先执行一次do里面的代码,然后再去判断while()中的条件,是否成立,如果成立就继续循环,不成立循环结束。
(1)用while循环列出1--10和10--1
案例程序分析:
package org.westos.demo5;
public class MyDemo2 {
public static void main(String[] args) {
int i=1;
while(i<=10){
System.out.println(i);
i++;
}
System.out.println("-------------------");
int j=10;
while (j>=1){
System.out.println(j);
j--;
}
}
}
(2)用while循环编写1--100以内的奇数偶数和。
package org.westos.demo5;
public class MyDemo3 {
public static void main(String[] args) {
//用while循环输出1--100以内的奇数偶数和:
int sum=0;
int jishu=0;
int oushu=0;
int i=1;
while (i<=100){
if (i %2==1){
jishu+=i;
}else{
oushu+=i;
}
sum+=i;
i++;
}
System.out.println("总和为:"+sum );
System.out.println("奇数和为:"+jishu);
System.out.println("偶数和为:"+oushu);
}
}
一般来说,知道循环次数,用for循环,如果不知道循环的次数,用while循环,但要知道循环结束的条件。