‘壹’ 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()方法