我知道用的是什么ArrayList<T>
,但我什么时候应该使用ArrayList<?>
?你能用例子解释一下吗?谢谢.
我有以下代码,它有
一个可变的Person类,String和一个修改String和Person实例的方法
class Person{
int a = 8;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
@Override
public String toString() {
return "Person [a=" + a + "]";
}
}
Run Code Online (Sandbox Code Playgroud)
-
public class TestMutable {
public static void main(String[] args)
{
Person p = new Person();
p.setA(34);
String s = "bar";
modifyObject(s, p); //Call to modify objects
System.out.println(s);
System.out.println(p);
}
private static void modifyObject(String str, Person p)
{
str = "foo";
p.setA(45); …
Run Code Online (Sandbox Code Playgroud) java terminology parameter-passing pass-by-reference pass-by-value
我最近一直在使用RenderScript,目的是创建一个程序员可以轻松使用的API,类似于Microsoft Accelerator的工作方式.
我现在遇到的麻烦是因为我想要在RenderScript层中传递值并让所有内容以最有效的方式运行,这是我的源代码的摘录到目前为止:
int[] A = new int[10];
int[] B = new int[10];
for (int i = 0; i < 10; i++) {
A[i] = 2;
B[i] = i;
}
intAdd(A, B);
Run Code Online (Sandbox Code Playgroud)
这只是创建两个基本数组并用值填充它们并调用将它们发送到RenderScript的函数.
private void intAdd(int[] A, int[] B) {
RenderScript rs = RenderScript.create(this);
ScriptC_rsintadd intaddscript = new ScriptC_rsintadd(rs, getResources(), R.raw.rsintadd);
mScript = intaddscript;
for(int i = 0; i < A.length; i++) {
setNewValues(mScript, A[i], B[i]);
intaddscript.invoke_intAdd();
int C = getResult(mScript);
notifyUser.append(" " + C);
}
}
public void setNewValues(Script …
Run Code Online (Sandbox Code Playgroud) 简单也许是愚蠢的问题.我有一个登录活动,它启动另一个活动,这里是代码:
public class LoginActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
ActionBar actionBar = getActionBar();
actionBar.hide();
Button btnLogin = (Button) findViewById(R.id.btnLogin);
final TextView tvUsername = (TextView) findViewById(R.id.tvUsername);
final TextView tvPassword = (TextView) findViewById(R.id.tvPassword);
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (tvUsername.getText().toString().length()<1) {
Toast msg = Toast.makeText(LoginActivity.this, "Enter a Username", Toast.LENGTH_LONG);
msg.setGravity(Gravity.TOP|Gravity.LEFT, 0, 70);
msg.show();
tvUsername.requestFocus();
} else if (tvPassword.getText().toString().length()<1) {
Toast msg = Toast.makeText(LoginActivity.this, "Enter a Password", Toast.LENGTH_LONG);
msg.setGravity(Gravity.TOP|Gravity.LEFT, 0, 200);
msg.show();
tvPassword.requestFocus(); …
Run Code Online (Sandbox Code Playgroud) 有没有办法将ISO文件的内容(里面的所有目录和文件)提取到本地路径中的给定目录?特别是在Windows环境中使用Java.
你有什么建议的图书馆吗?或者有任何工作要做吗?
谢谢.
我读了这篇文章:JDK 8和JRE 8支持的语言环境,它声明:
编号系统可以由带有编号系统ID的语言标签指定
????????????????????????????????????????????????????????????????? ? Numbering System ID ? Numbering System ? Digit Zero Value ? ????????????????????????????????????????????????????????????????? ? arab ? Arabic-Indic Digits ? \u0660 ? ?????????????????????????????????????????????????????????????????
现在,为了证明这一点,我写了以下代码:
import java.text.DecimalFormatSymbols;
import java.text.NumberFormat;
import java.util.Locale;
public class Main
{
public static void main(String[] args)
{
Locale locale = new Locale("ar", "sa", "arab");
DecimalFormatSymbols dfs = DecimalFormatSymbols.getInstance(locale);
NumberFormat numberFormat = NumberFormat.getNumberInstance(locale);
System.out.println(dfs.getZeroDigit());
System.out.println(numberFormat.format(123));
}
}
Run Code Online (Sandbox Code Playgroud)
我期待输出是这样的:
0
123
但是,输出如下:
0
123
这样做的主要目的是使JavaFX GUI显示阿拉伯数字而不是英文数字,因为它使用默认语言环境(我可以设置它Locale.setDefault(...)
).
所以我的问题是,如何使用区域设置中的编号系统来显示Java中的本地化数字?那么,是否可以在JavaFX上应用它?
我有一个使用Java webstart技术的项目.我决定将Java版本从8升级到9.但是,我在编译时面临以下错误:
error: package javax.jnlp is not visible
import javax.jnlp.DownloadServiceListener;
^
(package javax.jnlp is declared in module java.jnlp, which is not in the module graph)
Run Code Online (Sandbox Code Playgroud)
我试图包括C:\Program Files\Java\jdk-9\lib\javaws.jar
在类路径中,但仍然存在同样的问题.
我正在尝试测量几种方法的执行时间.所以我想多做一个方法而不是重复相同的代码.
这是我的代码:
private void MeasureExecutionTime(Method m)
{
startTime = System.nanoTime();
try
{
m();
}
finally
{
endTime = System.nanoTime();
}
elapsedTime = endTime - startTime;
System.out.println("This takes " + elapsedTime + " ns.");
}
Run Code Online (Sandbox Code Playgroud)
假设我有myMethod()
,我怎么MeasureExecutionTime()
用来衡量myMethod
执行时间?
这是我的代码:
<input type="text" onkeyup="if(this.value.length > 0) document.getElementById('start_button').disabled = false; else document.getElementById('start_button').disabled = true;"/>
<input type="button" value="Click to begin!" id="start_button" disabled/>
Run Code Online (Sandbox Code Playgroud)
这有效但效率仍然不高,因为用户可以删除文本框内的文本,并在按住DELETE键时单击按钮.有没有更有效的方法来实现这个使用JavaScript?
嗨,我想添加一个if语句,检查textview(称为TextView1)中的文本是否包含".".我知道我可以查看文本是否等于".".但我不知道如何检查文本是否包含".".谁能帮我这个?谢谢
我不知道如何处理TextArea1以检查它是否包含小数点
if (TextArea1 ){
//Do Something
}
Run Code Online (Sandbox Code Playgroud)