运算符
A:概念
B:常用的运算符
±*/的代码:
package cn.tedu.day01;
import java.util.Scanner;
public class OperatorDemo01 {
public static void main (String[] args){
/*int a =5;
int b= 2;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
*/
Scanner sb = new Scanner (System.in) ;
Scanner sc = new Scanner (System.in) ;
System.out.println("请输入两个数:");
int a =sc.nextInt();
int b =sc.nextInt();
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
sc.close();
}
}
取余的代码:
package cn.tedu.day01;
public class OperatorDemo02 {
public static void main (String[] args){
int x =5;
int y= 2;
System.out.println(x%y);
System.out.println(x%-y);
System.out.println(-x%-y);
System.out.println(-x%y);
}
}
代码:
package cn.tedu.day01;
public class OperatorDemo03 {
public static void main (String[] args){
int x =10;
int y =5;
System.out.println(x+y);
System.out.println(x+" "+y);
char c='0';
char c1='a';
System.out.println(c);
System.out.println(c1);
System.out.println(x+c1);
System.out.println("love"+x);
System.out.println(x+y+"love");
}
}
算术运算符
-
++和–的操作
1、单独操作的时候,++和–不管放在前面还是后面,结果都是一样的,
2、但是如果参与了运算操作的时候:
如果++或–在变量的后面的时候,先拿变量参与运算操作,后变量进行++或–;
如果++或–在变量的前面的时候,先拿变量进行++或–,后变量参与运算操作;
代码:
package cn.tedu.day01;
public class OperatorDemo04 {public static void main (String[] args){ int x=5; System.out.println(x); x++; ++x; System.out.println(x); int y=++x; System.out.println(x); System.out.println(y);
}
}
赋值运算符
代码:
package cn.tedu.day01;
public class OperatorDemo05 {
public static void main (String[] args){
int x=5;
int y=8;
int z=x+=y;
System.out.println(z);
}
}
关系运算符(&、|、!、^)
代码:
package cn.tedu.day01;
public class OperatorDemo06 {
public static void main (String[] args){
int x=10;
int y=20;
int z=30;
System.out.println((x>y)&&(y>z));//false
System.out.println((x>y)||(y>z));//false
System.out.println((x>y)||(y<z));//true
System.out.println((x>y)&(y>z));//false & false
System.out.println((x>y)|(y>z));//false & false
System.out.println((x>y)|(y<z));//false & true
}
}
逻辑运算符(&&、||)
小结:
A:&&和&的区别?
a:最终结果一样
b:&&具有短路效果,左边是false,右边不执行
&是无论左边是false还是true,右边都会执行。
B:||和|的区别?
a:最终结果一样
b:||具有短路效果,左边是true,右边不执行
|是无论左边是false还是true,右边都会执行。
三元运算符
代码:比较三个数中的最大值
package cn.tedu.day01;
import java.util.Scanner;
public class OperatorDemo06 {
public static void main (String[] args){
Scanner sa= new Scanner (System.in) ;
Scanner sb = new Scanner (System.in) ;
Scanner sc = new Scanner (System.in) ;
System.out.println("请输入三个数:");
int a =sc.nextInt();
int b =sc.nextInt();
int c =sc.nextInt();
int temp =(a>b)?a:b;
int max=(temp>c)?temp:c;
System.out.println(max);
}
}
负数取余:(N%M)符号与N 有关,例如:-5%-2=-1
if语句的基本使用
if(关系表达式){
语句块;
}
代码:
package cn.tedu.day01;
import java.util.Scanner;
public class text01 {
public static void main (String[] args){
int x = 15;
int y = 6;
int z = 7;
if(x<=5){
System.out.println("x<=5");
}
else if (x>5&&x<15){
System.out.println("x在5和15之间");
}
else {
System.out.println("15");
}
}
代码:if语句实现判断王者荣耀段位
public class text01 {
public static void main (String[] args){
Scanner sa= new Scanner (System.in) ;
System.out.println("请输入一个数:");
int x =sa.nextInt();
if(x>=0&&x<=100){
if(x>=90&&x<=100){
System.out.println("王者荣耀段位是最强王者");
}
else if (x>=80&&x<90){
System.out.println("王者荣耀段位是星耀");
}
else if (x>=70&&x<80){
System.out.println("王者荣耀段位是钻石");
}
else if (x>=60&&x<70){
System.out.println("王者荣耀段位是黄金");
}
else {
System.out.println("王者荣耀段位是黑铁");
}
}
else
System.out.println("请重新输入一个数");
}
}
程序考虑数据
安全性数据;
边界数据;
错误数据;
闰年的判断代码:
package cn.tedu.day01;
import java.util.Scanner;
public class text01 {
public static void main (String[] args){
Scanner sa= new Scanner (System.in) ;
System.out.println("请输入一个数:");
int x =sa.nextInt();
if(x>=1)
if(x % 4 == 0 && x % 100 != 0 || x % 400 == 0){
System.out.println("该年为闰年");
}
else {
System.out.println("该年不是闰年");
}
else{
System.out.println("请重新输入一个数");
}
}
}
switch(变量/表达式){
case 字面值1:语句块1;break;
case 字面值2:语句块2;break;
case 字面值3:语句块3;break;
……
default:语句块n;
}
表达式的值:byte、short、int、char
JDK1.5之后,加入了枚举类型。
JDK1.7之后,加入了String类型
break:中断switch语句的执行。
default:所有的情况都不匹配的时候,就执行该处语句块。
掌握switch语句的执行顺序。
代码;
package cn.tedu.day01;
import java.util.Scanner;
public class SwitchDemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int day=sc.nextInt();
switch(day){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default:System.out.println("请重新输入");
}
}
}
1-100之间奇数和的代码
package cn.tedu.day01;
import java.util.Scanner;
import org.omg.Messaging.SyncScopeHelper;
public class ForDemo {
public static void main(String[] args) {
int sum =0;
for(int i=1;i<=100;i++){
if(i%2!=0)
sum+=i;
}
System.out.println("1-100之间奇数和为:"+sum);
}
}
输入年月判断天数代码:
package cn.tedu.day01;
import java.util.Scanner;
public class text01 {
public static void main (String[] args){
Scanner sa= new Scanner (System.in) ;
System.out.println("请输入年份和月份:");
int year =sa.nextInt();
int mouth =sa.nextInt();
switch(mouth){
case 1:case 3:case 5:case 7:case 8:case 10:case 12:
System.out.println(year+"年"+ mouth+"月有31天");
break;
case 4:case 6:case 9:case 11:
System.out.println(year +"年"+ mouth+"月有30天");
break;
case 2:
if(year % 4 == 0 && year % 100 != 0 || year% 400 == 0){
System.out.println(year+"年"+ mouth+"月有29天");
}
else{
System.out.println(year+"年"+ mouth+"月有28天");
}
break;
}
}
sc.close();
}
窗体代码
package cn.tedu.day01;
import javax.swing.JFrame;
/**
- 手动导包 import
- 自动导包 ctrl+shift+o
- 点击红色的×
- 随时保存代码
- @author Administrator
*
*/
public class TurtlePro {
public static void main(String[] args) {
//1.创建一个窗体
JFrame frame =new JFrame();
//2.给窗体起名字
frame.setTitle("忍者神龟");
//3.给窗体添加大小
frame.setSize(1400,800);
//4.居中显示
frame.setLocationRelativeTo(null);
//类名,静态常量 减轻缓存
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//画布
TJPane1 tj = new TJPane1();
frame.add(tj);
//5.显示窗体
frame.setVisible(true);
}
}
画乌龟代码:
package cn.tedu.day01;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JPanel;
public class TJPane1 extends JPanel {
//乌龟的初始位置
int x = 300;
int y = 200;
//Graphics g:画笔
@Override
public void paint(Graphics g) {
// TODO Auto-generated method stub
super.paint(g);
//修改背景
this.setBackground(Color.cyan);
g.setColor(Color.green);
g.fillOval(x, y, 70, 100);
//加眼睛
g.setColor(Color.BLACK);
g.fillOval(x+10, y+30, 10, 16);
g.fillOval(x+50, y+30, 10, 16);
//加舌头
g.setColor(Color.RED);
g.fillOval(x+30, y,8, 6);
//加壳
g.setColor(Color.MAGENTA);
g.fillOval(x-45, y+60, 30, 40);
g.fillOval(x+90, y+60, 30, 40);
g.fillOval(x-45, y+200, 30, 40);
g.fillOval(x+90, y+200, 30, 40);
g.fillOval(x+30, y+250, 20, 27);
g.setColor(Color.DARK_GRAY);
g.fillOval(x-40, y+50, 150, 200);
//加花纹
//设置字体大小
Font font = new Font (Font.DIALOG,Font.BOLD,30);
g.setColor(Color.gray);
g.setFont(font);
g.drawString("龟龟", x+5, y+150);
/*
//给画笔设置颜色
g.setColor(Color.RED);
//画圆
g.drawRect(20, 150, 400, 600);
//画实心
g.fillOval(12, 12, 65, 65);
g.drawOval(12, 22, 150, 150);
g.setColor(Color.YELLOW);
//画圆
g.drawOval(50, 60, 800, 700);
//画椭圆
g.fillOval(10,10, 45, 80);
//线段
g.drawLine(10, 10, 10, 10);
*/
}
}