『壹』 java 判斷語句的簡寫問題
str = str== null ? "" : str;
首先判斷的是 str==null;
如果成立那麼返回真——即返回「」——str="";
如果不成立那麼返回假——即返回str——str=str;
str = 條件 ? 真 : 假
這個公式你應該可以看得懂了。!
這是一個三元運算
希望可以幫到你!
『貳』 Java判斷方法
假設設備的溫度數據存在int[]degrees裡面,下面的方法應該能滿足要求:
public String decide(int []degrees){
int result=0;
for(int i=0;i<degrees.length;i++){
if(degrees[i]>=80){result=2;break;}
if(degrees[i]>=60){result=1;}
}
if(result==0)return "合格";
else if(result==1)return "需注意";
else return "不合格";
}
}
『叄』 java中的判斷
1.三目運算
格式:
(關系表達式 結果是布爾值) ? 表達式1 : 表達式2;
1
如果前面的關系成立,則返回表達式1的值。
否則,返回表達式2的值。
int a = 20;
int b = 40;
//返回兩者中較大的數:
int max = (a>b) ? a : b;
System.out.println("較大的數是:"+max);
1
2
3
4
5
6
2.if 判斷
1.第一種結構
if(關系表達式:布爾值){
語句體;
}
1
2
3
2.第二種結構
if(關系表達式:布爾){
語句體1;
}else{
語句體2;
}
1
2
3
4
5
3.第三種結構
if(關系表達式1:布爾值){
語句體1;
}else if(關系表達式2:布爾值){
語句體2;
}.......else if(關系表達式N:布爾值){
語句體N;
}else{ //最後一個else 不帶條件
語句體N+1;
}
『肆』 java 如何判斷\\
\是轉義符 在java中\\ 就轉義成了一個反斜杠 \\\\這樣就是兩個反斜杠
當然如果你要判斷字元串中是否包含"\\",可以用正則表達式!
『伍』 Java判斷
1. int
index
=
fileName.lastIndexOf(".");
取出文件名中的最後一個.的位置,也就是擴展名前面的.的位置2. index!=-1,如果==-1,那麼說明文件名沒有.,所以這個判斷是說文件名中有點3. index!=0,並且這個.不是在文件名的第一個,那樣的話是非合法java文件4. fileName.substring(index+1,fileName.length()).equals("java"):其中index+1,是.點後面第一個字母,fileName.substring(index+1,fileName.length())的意思是取出點後面到最後的字元串,也就是擴展名,最後.equals("java"),判斷擴展名是不是「java」
『陸』 java中的判斷語句有哪些
if和switch這和C語言是一樣的。
『柒』 java中怎麼判斷
if(1>0){
}
『捌』 java if判斷
java裡面的字元串比較特殊,一般來說,我們想要比較字元串的值!
可以選擇使用函數equals()
具體使用方法:
housetype == "贈送房" 改為 housetype.equals("贈送房")
『玖』 用JAVA判斷輸入的公式
import java.awt.Frame;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
import java.util.List;import javax.swing.JButton;
import javax.swing.JTextField;@SuppressWarnings("serial")
public class Calc extends Frame{
public static final int WIN_HEIGHT = 321;
public static final int WIN_WIDTH = 228;
private JTextField calcText = new JTextField("0");
String[] inStr = new String[] {"(", ")", "D", "+",
"7", "8", "9", "-",
"4", "5", "6", "*",
"1", "2", "3", "/",
"0", ".", "C", "="};
public void init() {
this.setSize(WIN_WIDTH, WIN_HEIGHT);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
this.setLayout(null);
this.setTitle("Calc");
calcText.setVisible(true);
calcText.setHorizontalAlignment(JTextField.RIGHT);
this.add(calcText);
calcText.setBounds(20, 40, 190, 25);
//創建btn
JButton btn;
for(int i = 1, j = 0; i <= inStr.length; i++) {
btn = new JButton(inStr[i-1]);
this.add(btn);
btn.addMouseListener(new MyMouse());
btn.setBounds(20 + (45 + 3) * ((i-1) % 4), 70 + (43 + 2) * j, 45, 43);
if(i % 4 == 0) {
j++;
}
}
}
class MyMouse extends MouseAdapter {
public void mouseClicked(MouseEvent e) {
JButton btn = (JButton)e.getSource();
String action = btn.getText();
if("C".equals(action)) {
calcText.setText("");
} else if("D".equals(action)) {
String str = calcText.getText();
calcText.setText(str.substring(0, str.length() - 1));
} else if("=".equals(action)) {
try {
calcText.setText(separate(calcText.getText()) + "");
} catch (Exception e1) {
calcText.setText("式子錯誤");
}
} else {
calcText.setText(calcText.getText() + action);
}
}
}
public static void main(String[] args) {
new Calc().init();
}
//拆除括弧進行計算
public double separate(String str) throws Exception {
double re = 0;
System.out.println(str);
//如果不存在括弧,進行直接計算
if( ( !str.contains("(")) && (!str.contains(")") ) ) {
re = calculate(str);
} else {
//若有括弧,繼續進一步拆解括弧計算
String oldStr = extract(str);
String newStr = calculate(extract(str)) + "";
re = separate(str.replace(oldStr, strValue(Double.parseDouble(newStr))));
}
return re;
}
private String strValue(Double d) {
if(d % 1 == 0) {
return ""+d.intValue();
}
return d.toString();
}
//拆解括弧
public String extract(String str) throws Exception {
String childStr = str.substring(str.indexOf('(') + 1, str.length());
if(!childStr.contains("(")) {
return str.substring(str.indexOf('(') , str.indexOf(')') + 1);
}
if(childStr.indexOf('(') - childStr.indexOf(')') > 0) {
return str.substring(str.indexOf('(') , str.indexOf(')') + 1);
} else {
return extract(childStr);
}
}
//無括弧表達式直接計算
public double calculate(String str) {
double re = 0;
Formula f = new Formula(str);
if(f.hasAction()) {
re += calculate(f.toString());
} else {
re += Double.parseDouble(f.toString());
}
return re;
}
class Formula {
private List<Character> strList = new ArrayList<Character>();
private List<Double> doubleList = new ArrayList<Double>();
private char action = '0';
private String sourceStr;
public Formula(String str) {
str = str.trim().replace("(", ")").replace(")", " ").replace(" ", "") ;
sourceStr = str;
char[] chars = str.toCharArray();
String num = "";
for(char c : chars) {
//非數字和.
if((c < 48 || c > 57) && c != 46) {
strList.add(c);
setAction(c);
doubleList.add(Double.parseDouble(num));
num = "";
} else {
num += c;
}
}
if(!"".equals(num)) {
doubleList.add(Double.parseDouble(num));
}
}
public boolean hasAction() {
return action != '0';
}
public void setAction(char c) {
if(action == '0') {
action = c;
return;
}
if((action == '/' || action == '*')) {
return;
} else if(c == '*' || c=='/') {
action = c;
}
}
public String toString() {
if(!hasAction()) {
return sourceStr;
}
int index = strList.indexOf(action);
double num1 = doubleList.get(index);
double num2 = doubleList.get(index+1);
switch(action) {
case '+':
return sourceStr.replace(strValue(num1) + action + strValue(num2), strValue(num1+num2) + "");
case '-':
return sourceStr.replace(strValue(num1) + action + strValue(num2), strValue(num1-num2) + "");
case '*':
return sourceStr.replace(strValue(num1) + action + strValue(num2), strValue(num1*num2) + "");
case '/':
return sourceStr.replace(strValue(num1) + action + strValue(num2), strValue(num1/num2) + "");
case '0':
return sourceStr;
}
return sourceStr;
}
}}
我也沒有詳細的測。你測試一下,如果式子是錯誤的會在文本框輸出 式子錯誤。控制台會輸出 計算 步驟。功能算是實現了,再有什麼問題直接QQ叫我好了。
『拾』 JAVA中關於判斷
真亂,你判斷2個字元串是否相等,不能用 == 或 !=
應該用equals()方法