我是java的新手,我需要编写一个将布尔值true或false转换为字符串"yes"或"no"的方法.我有点迷茫.
public class Book
{
private String title;
private String author;
private String isbn;
private int pages;
private boolean pback;
private double price;
/**
* Constructor for objects of class Book
*/
public Book(String bookTitle, String bookAuthor, String bookCode, int bookPages, boolean paperback, double bookRetail)
{
// initialise instance variables
title = bookTitle;
author = bookAuthor;
isbn = bookCode;
pages = bookPages;
pback = paperback;
price = bookRetail;
}
public String translate(boolean trueorFalse)
{
if(pback = true)
{
??????;
}
else(pback = false)
{
???????;
}
}
Run Code Online (Sandbox Code Playgroud)
tan*_*ens 32
boolean myBoolean = true;
String result = myBoolean ? "yes" : "no";
Run Code Online (Sandbox Code Playgroud)
Jon*_*eet 24
该条件运算符是你的朋友:
public static String translate(boolean trueOrFalse) {
return trueOrFalse ? "yes" : "no";
}
Run Code Online (Sandbox Code Playgroud)
一般来说,如果你发现自己写作:
SomeType x;
if (someCondition) {
x = someExpression;
} else {
x = someOtherExpression;
}
Run Code Online (Sandbox Code Playgroud)
它通常更好用:
SomeType x = someCondition ? someExpression : someOtherExpression;
Run Code Online (Sandbox Code Playgroud)
条件运算符确保只有一个someExpression或被someOtherExpression评估,因此您可以使用方法调用等,确信它们不会被不适当地执行.
当然有时候这太复杂了 - 你需要自己判断每个表单的可读性.
小智 6
Apache Group 有一个名为Apache Commons Lang的项目,用于处理常见的 Java 类,如Boolean. 它的BooleanUtils类有一些很好的方法可以使用:
toStringOnOff(boolean bool) - converts a boolean to a String returning 'on' or 'off'
toStringOnOff(Boolean bool) - converts a Boolean to a String returning 'on', 'off' or null
toStringTrueFalse(boolean bool) - converts a boolean to a String returning 'true' or 'false'
toStringTrueFalse(Boolean bool) - converts a Boolean to a String returning 'true', 'false' or null
toStringYesNo(boolean bool) - converts a boolean to a String returning 'yes' or 'no'
toStringYesNo(Boolean bool) - converts a Boolean to a String returning 'yes', 'no' or null
Run Code Online (Sandbox Code Playgroud)
在您的示例中,您应该使用该toStringYesNo方法。
boolean myBoolean = false;
String result = BooleanUtils.toStringYesNo(myBoolean);
System.out.println(result);
Run Code Online (Sandbox Code Playgroud)
这将打印
no
Run Code Online (Sandbox Code Playgroud)
要将库添加到您的项目中,只需将其添加到您的Maven pom.xml依赖项中:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.6</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
if(pback == true)
{
return "yes";
} else {
return "no";
}
Run Code Online (Sandbox Code Playgroud)
有几点需要注意:
==,所以你应该写if ( a == b ), 而不是if ( a = b );return后跟值来完成的;else ifwhich then 采用类似于 的表达式if,例如else if ( a ==b )。| 归档时间: |
|
| 查看次数: |
24050 次 |
| 最近记录: |