Java基礎篇運算子與if判斷
9.Java的運算子
算術運算子:+ - * / % ++ --
/ 除號右邊不能為0
++自增
i++-->i=i+1;
--自減
i--;-->i=i-1;
++i/--i;參與運算時 先自增 再運算
class Demo_1 { public static void main(String[] arg) { int a = 1; int b = 2; //先賦值 再運算 int aplus = a++; int bplus = b--; System.out.println("aplus "+aplus); System.out.println("bplus "+bplus); System.out.println("a---"+a); System.out.println("b---"+b); //先運算 再賦值 int aa = ++a; int bb = --b; System.out.println("a---"+a); System.out.println("b---"+b); System.out.println("aplus "+aa); System.out.println("bplus "+bb); } }
賦值運算子: = += -= *= /= %=
注意:
short b = 2;
b = b+3;//這是兩次運算 第一次相加 第二次賦值 不會自動轉型
b+=3;//一次運算 自動轉換型別
關係運算符:> < <= >= == !=
注意:
關係運算符結果只有 true/flase
邏輯運算子: ! & | ^ && ||
true & true = true
true & false = false
false & ture = false
false & flase = false
只要兩邊的Boolean表示式結果 有一個為false 結果就是false
兩邊都為true 結果為true
true | true = true
true | false = false
false | ture = false
false | flase = false
兩邊只要有一個為true 結果就是true
只有兩邊為false 結果才是false
true ^ true = false
true ^ false = true
false ^ ture = true
false ^ flase = false
兩邊相同 結果為false
兩邊不同 結果為true
&& &的區別
對於:& -- > 不管怎樣,都會執行"&"符號左右兩邊的程式
按位與: a&b是把a和b都轉換成二進位制數然後再進行與的運算;
對於:&& -- > 只有當符號"&&"左邊程式為真(true)後,才會執行符號"&&"右邊的程式。
|| |的區別
|兩邊都要運算
|| 當左邊為true 右邊就不算了
import java.util.Scanner; class Demo_3 { public static void main(String[] args) { Test1(); } public static void Test1() { Scanner sc = new Scanner(System.in); int age = sc.nextInt(); System.out.println(age>18 && age<60); } public static void Test2() { Scanner sc = new Scanner(System.in); int age = sc.nextInt(); System.out.println(age<12 || age>60); } public static void Test3() { Scanner sc = new Scanner(System.in); System.out.println("A:輸入等於或大於90 但小於100的數"); int a=sc.nextInt(); System.out.println(a>=90 && a<100); System.out.println("B:輸入不是字元q 也不是字元k的字元"); String b = sc.next(); System.out.println(b.charAt(0)!='q' && b.charAt(0)!='k'); System.out.println("C:輸入1~9 但不包括5 的數"); int c = sc.nextInt(); System.out.println((c>1 && c<9) && c!=5); System.out.println("D:輸入一個不是1~9的數字"); int d = sc.nextInt(); System.out.println(d<1 && d>9); } public static void Tedt4() { Scanner sc = new Scanner(System.in); int year = sc.nextInt(); System.out.println(((year % 4 == 0) && year % 100 == 0) && year % 400 == 0); } public static void Test5() { Scanner sc = new Scanner(System.in); String s = sc.next(); char c = s.charAt(0); System.out.println(c>65 && c<90); } }
位運算子: & | ^ ~ >> << >>>
<<左移運算子
移動n位就是乘以2的n次冪 右側補(最高位是什麼補什麼)
>>右移運算子 帶符號右移
移動n位就是除以2的n次冪 左側補
>>>無符號右移運算子
無論最高位是什麼 右移後都補0
& 按位與
0--> false
1--> true
6 & 3 = 2
110
& 011
------
010 -->2
| 按位或
6 | 5 = 7
110
| 101
-----
111 -->7
^ 按位異或
相同為false 0 不同為true 1
一個數異或一個數兩次,結果不變
6 ^ 5 = 3
110
^ 101
-----
011 -->3
~ 按位取反
0-->1 1-->0
小知識:兩個整數交換值的三種方法
1.使用第三方變數
2.int a,int b;
a=a+b;
b=a-b;
a=a-b;
3.int n=3,m=6;
n = n^m;
m = n^m;
n = n^m;
字串連結符號: +
字串資料和任何資料使用 + 都是你相連線的意思 最後都會變成字串
System.out.println("6+6"+6+6);
三元運算子/三目運算子
格式:關係表示式 ? 表示式1 : 表示式2
boolean
關係表示式結果為true 則判斷表示式1 false則判斷表示式2
class Demo_4
{
public static void main(String[] args)
{
//1.用三目運算子 比較兩個整數是否相等
int a = 10;
int b = 20;
boolean b1 = (a==b) ? true : false;
System.out.println(b1);
//2.獲取三個整數中的最大值
Scanner sc = new Scanner(System.in);
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);
}
}
10.運算子的優先順序和轉義字元
賦值運算子 從左往右看
轉義字元:用在字串中 用來定製字串的輸出格式的特殊符號
\t 一個退格鍵
\n 換行 (linux unix)
\r 回車(在windows下 換行 \r\n)
\' 單引號
\" 雙引號
\\
String s="哥們兒,\r\n最近還好嗎?\t有沒有看\r\n\"星球大戰\"?'男'豬腳\\叫什麼來著?";
程式流程控制,結構化程式有三種結構
1.順序結構:從上向下 一行行程式碼執行
2.分支結構(選擇結構)
3.迴圈結構
二,分支語句
為什麼要用分支?
當程式面臨選擇的時候,每一種選擇對應一種操作(結果)
1.if語句
1.1
結構:if(表示式) --->關係表示式 和 邏輯表示式組成
{
執行語句;
}
執行流程:
a.當程式執行到if的時候 先去判斷表示式分的結果 true還是false
b.如果表示式的值是true 就執行{}裡的語句 一條if語句結束
c.如果表示式的值是false 就不執行{}裡的語句
2.if...else語句
2.1
結構:if(表示式) --->關係表示式 和 邏輯表示式組成
{
執行語句;
}
else
{
執行語句;
}
執行流程:
a.當程式執行到if的時候 先去判斷表示式分的結果 true還是false
b.如果表示式的值是true 就執行{}裡的語句 一條if語句結束
c.如果表示式的值是false 就執行else{}裡的語句
import java.util.Scanner;
class Demo_6
{
public static void main(String[] args)
{
Scanner sc= new Scanner(System.in);
/*int a=sc.nextInt();
int b= sc.nextInt();
if(a>b)
{
System.out.println(a+" "+b);
}
if(b>a)
{
System.out.println(b+""+a);
}*/
/*int c= sc.nextInt();
if(c%2==0)
{
System.out.println(c+"是偶數");
}
else
{
System.out.println(c+"是奇數");
}*/
String s= sc.next();
char a=s.charAt(0);
if(a=>65&&a<=90)
{
a +=32;
}
System.out.println(a);
//System.out.println("哥們兒,\r\n最近還好嗎?\t有沒有看\r\n\"星球大戰\"?'男'豬腳\\叫什麼來著?");
}
}
家庭作業!!!
1.輸入1~7顯示對應的日期
2.判斷質數
import java.util.Scanner;
import java.lang.Math;
class Homework
{
public static void main(String[] args)
{
homework2();
}
public static void homework1()
{
Scanner sc = new Scanner(System.in);
int a= sc.nextInt();
if(a==1)
{
System.out.println("今天是星期一");
}
if(a==2)
{
System.out.println("今天是星期二");
}
if(a==3)
{
System.out.println("今天是星期三");
}
if(a==4)
{
System.out.println("今天是星期四");
}
if(a==5)
{
System.out.println("今天是星期五");
}
if(a==6)
{
System.out.println("今天是星期六");
}
if(a==7)
{
System.out.println("今天是星期天");
}
}
public static void homework2()
{
Scanner sc= new Scanner(System.in);
int a=sc.nextInt();
int k=(int)Math.sqrt(a);
int i;
for(i=2;i<=k;i++)
{
if(a%i==0)
break;
}
if(i>k)
System.out.println("這個數是質數");
else
System.out.println("這個數不是質數");
}
}
今天依舊手殘!70字/秒!相關推薦
Java基礎篇運算子與if判斷
這裡是昨天未講完的內容!接上一天! 9.Java的運算子算術運算子:+ - * / % ++ --/ 除號右邊不能為0++自增i++-->i=i+1;--自減i--;-->i=i-1;++i/--i;參與運算時 先自增 再運算 class Demo_1 {
Java 基礎篇之類與物件
類與物件 類、物件和引用的關係 類和物件的關係 類是物件的模版,物件是類的一個例項,一個類可以有很多物件 一個Java程式中類名相同的類只能有一個,也就是型別不會重名 一個物件只能根據一個類來建立 引用和類以及物件的關係 引用只能指向其所屬的型別的類的物件 相同型別的引用之間可以賦值 只能通過指向一個物
java基礎篇之nio與aio
sre 非阻塞 只有一個 accept ava 使用步驟 截取 city writable 1.同步和異步 同步:指一個任務運行完以後接著運行下一個任務 異步:接到一個任務後開啟一個新的線程運行此任務,基本不占用原線程時間 2.阻塞與非阻塞 阻塞:多個線程同時訪問一份數據時
Java基礎篇之常量、變數、運算子
資料型別 : Java中的基本型別功能簡單,不具備物件的特性,為了使基本型別具備物件的特性,所以出現了包裝類,就可以像操作物件一樣操作基本型別資料。 基本型別對應的包裝類 基本型別 byte int short long float double boolean char 包裝型別
Java基礎篇(三)--- 抽象類,介面,final,單目運算子
多型 ①父類引用指向子類: java允許父類的引用變數引用它的子類的例項(物件) Animal animal = new Cat(); 這種轉換是自動完成的 子類在一定條件下是可以轉換為父類的 ②繼承: 類的單繼承和介面的多繼承,都能體現多型 ③重寫、過載 過載:同一個類的同名函式(方法的引
JAVA基礎-3.運算子,鍵盤錄入,if語句
1:運算子(掌握) (1)算術運算子 A:+,-,*,/,%,++,– B:+的用法 a:加法 b:正號 c:字串連線符
Java基礎篇——深克隆與淺克隆
基本定義 克隆,顧名思義,即是產生一個與原物件“完全”一樣的一個新物件。這裡的一樣,或許是表面的一樣,或許是真的一樣。這就牽扯到兩個新定義:淺克隆於深克隆。 淺克隆:新物件的基礎型別的變數值與原物件相同,而特殊物件,即非八大基本型別的物件與原物件指向同一記憶體空間,不管新
Java基礎——使用三元運算符判斷一個數的奇偶性
print sta stat ont strong scan ron -s color 要求: 使用三元運算符判斷一個數的奇偶性 實現代碼: /** * 使用三元運算符判斷用戶輸入的一個數的奇偶性 */ import java.util.Scanner; pu
js基礎第二天(if判斷語句)
執行 部分 nbsp -s cnblogs 簡單 ges logs mat if是js比較重要的部分,內容比較簡單,單是在工作中是用的最多的。今天已經把表單的部分補齊了。 If...else 條件判斷 if(條件表達式){ 如果條件是true,執行該處代
【Java基礎】RTTI與反射之Java
start auth try dword star sse from tac sed 1 ; Example assembly language program -- 2 ; Author: Karllen 3 ; Date: revised 05/2014
JAVA基礎篇—接口實現動態創建對象
一個 n) ges pack out string sta else if stat Scanner在控制臺輸入內容 package com.Fruit; public interface Fruit {//提供接口 } package com.Fruit; public
JAVA基礎篇—抽象類,抽象方法
java b- rec package rate idt -c over stub class Shape 1 package com.shape; 2 3 public abstract class Shape { 4 double area;//
JAVA基礎篇—Servlet小結
組件 一個 另一個 操作 默認 list 變化 nbsp tor 一、get請求和post請求的區別: 1.get請求是通過url傳遞參數,post請求是通過請求體傳遞參數的 2.get請求最多允許傳遞255個字符,對長度有限制,所以數據比較大的時候我們使用post請求
JAVA基礎篇—文件上傳下載
mime contain comm jsp style javax bstr trace ace /index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" page
面試準備&總結-Java基礎篇
logs 服務器 運行 錯誤 筆記 table code 其他 pro 在vps的服務器到期了,在hw又不能訪問,直接在博客園寫筆記了。 基礎篇 1. 集合類的繼承關系,源碼實現原理,初始大小和如何增長。 - list類初始大小10,加載因子為1,擴容到1.5+1。
Java基礎篇 第一天
javac inline 配置環境 安全性 rac jar 面向對象 開發 成功 1991年出生第一個名字oak 1994年更名為Java 2009年被Oracle收購 目前最高版本Java 9 本課程學習用的JDK1.7 Java語言特點:簡單性 解釋性 面向對象 高性能
java基礎 抽象類與接口
重要 自身 接口 多繼承 bst 文件 其他 ron 不同 抽象類: 在面向對象的領域一切都是對象,所有的對象都是通過類來描述的。如果我們要定義的一個類沒有足夠的信息來描述一個具體的對象,還需要其他的具體類來支持,這個時候我們可以考慮使用抽象類。在類定義的前面增加abs
JAVA基礎知識|lambda與stream
view 兩個 方法 testcase alt except 上海 sort unit lambda與stream是java8中比較重要兩個新特性,lambda表達式采用一種簡潔的語法定義代碼塊,允許我們將行為傳遞到函數中。之前我們想將行為傳遞到函數中,僅有的選擇是使用匿名
Java基礎02 方法與數據成員
ring .get 創建 nts get bar 轉載 聲明 數值 作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 在 Java基礎01 從HelloWorld到面向對象 ,我們初步了解了對象(o
Java基礎04 封裝與接口
錯誤提示 beep struct 成員 test stat ... 開關 style 作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝! 總結之前的內容,對象(object)指代某一事物,類(clas