我需要从组合框中删除所有项目
int itemCount = combo.getItemCount();
for(int i=0;i<itemCount;i++){
combo.removeItemAt(0);
}
Run Code Online (Sandbox Code Playgroud)
此代码将删除除最后一项之外的所有项目.它给出了NullPointerException.如何解决?
请考虑以下代码段:
class A{ /* assume static and non static block are here */ }
class B extends A{ /* assume static and non static block are here */ }
Run Code Online (Sandbox Code Playgroud)
在主要方法中,
new B();
Run Code Online (Sandbox Code Playgroud)
所以初始化的顺序是:
现在来看看这段代码,
class A{
A(){
this.m(); //line 1
}
void m(){
System.out.println("A.m()");
}
}
class B extends A{
void m(){
System.out.println("B.m()");
}
}
Run Code Online (Sandbox Code Playgroud)
在主要方法中,
new B();
Run Code Online (Sandbox Code Playgroud)
当正在执行构造函数A的代码时,它只能看到类A中的方法m,因为尚未为类B初始化非静态成员(根据我提到的顺序).但结果是"Bm()".(已经执行了子类的方法)考虑到我提到的顺序,有人可以解释这里发生的事情(方法覆盖)吗?
我正在尝试为android中的替代键创建自定义弹出键盘.通过使用默认键盘,我只能为pop键盘提供自定义布局.
我也需要自定义行为(就像Gboard中的一样)例如,
(1)当长按按钮时,默认情况下应突出显示特定的按键
(2)可以通过移动手指来突出显示和选择按键(长按键并同时移动手指)
这些是我引用的链接:
任何建议/帮助将不胜感激.
谢谢.
我收到以下代码片段的错误
错误是:在调用超类型构造函数之前无法引用x(并指出注释1中的语句)
class Con{
int x =10;
Con(){
this(++x); //1
System.out.println("x :"+x);
}
Con(int i){
x=i++;
System.out.println("x :"+x);
}
}
Run Code Online (Sandbox Code Playgroud)
在主要方法中,我有这个说法
Con c1=new Con();
Run Code Online (Sandbox Code Playgroud)
我不明白这个错误.有人能解释一下这里到底发生了什么吗?
我对Android Studio生成的两个布局文件感到困惑.(fragment_main.xml和activity_main.xml)
我使用activity_main.xml.要使用activity_main.xml,我需要注释掉
if(savedInstanceState==null){...} //in onCreate(), Otherwise it will not display
Run Code Online (Sandbox Code Playgroud)
然后我可以使用activity_main.xml.
有人可以解释一下
何时使用Fragment_main.xml
使用两种布局的优点.
如何正确使用它们.(如果我没有在上面注释掉它将不显示activity_main.xml,而是显示fragment_main布局.这意味着我需要在fragment_main.xml中创建接口.)
谢谢.
代码段如下:
class A{
static int i = 10; //line 1
static { int i = 20;} //line 2
public static void main(String[] args) {
System.out.println(A.i); //output is 10
}
}
Run Code Online (Sandbox Code Playgroud)
2.如何在第2行访问变量'i'?
我是Java的新手.任何人都可以解释主方法中发生了什么?
class Demo {
public static void main(String []args) {
//setting a name using the constructor
Thread t=new Thread("main"){
//what is this? a static block?? need an explanation to this.
{setName("DemoThread");}
};
//output is DemoThread. Since it set the name again.
System.out.println(t.getName());
}
}
Run Code Online (Sandbox Code Playgroud) 我在gradle文件中使用支持库中的渲染脚本.
renderscriptTargetApi 22
renderscriptSupportModeEnabled true
Run Code Online (Sandbox Code Playgroud)
添加这两行后,我收到此错误
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
UNEXPECTED TOP-LEVEL EXCEPTION:com.android.dex.DexException: Multiple dex files define Landroid/support/annotation/AnimRes;
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.main(Main.java:245)
at com.android.dx.command.Main.main(Main.java:106)
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException:
org.gradle.process.internal.ExecException: Process 'command 'C:\Program
Files\Java\jdk1.8.0_25\bin\java.exe'' finished with non-zero exit value 2
Run Code Online (Sandbox Code Playgroud) 我正在尝试实现更新主题功能.当我想添加一个新主题时,它正在工作.但是当我取消选中一个复选框(如果我想从程序中删除现有主题)时,它就不起作用了.
我调试程序,它显示未选中的复选框也被选中.

例如:如果我取消选中IT102并单击更新按钮,则所有3个主题都将保存在数据库中.
这是aspx代码
<asp:GridView ID="gridview_modules" runat="server" AutoGenerateColumns="False"
GridLines="None">
<HeaderStyle Width="30%" />
<RowStyle Width="30%" />
<FooterStyle Width="30%" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox runat="server" ID="checkbox_select" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="courseNo" HeaderStyle-Width="20%"
ItemStyle-Width="10%" FooterStyle-Width="10%" >
<FooterStyle Width="10%" />
<HeaderStyle Width="20%" />
<ItemStyle Width="10%" />
</asp:BoundField>
<asp:BoundField DataField="title"/>
</Columns>
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
这是更新按钮中的代码(Inside foreach循环)
System.Web.UI.WebControls.CheckBox chk = (System.Web.UI.WebControls.CheckBox)rowItem.Cells[0].FindControl("checkbox_select");
if (chk.Checked)
{
all++; //no of checked subjects when the button is clicked
if (con.saveCourseForProgram(SiteVariables.ProgramName, rowItem.Cells[1].Text.ToString(), year, sem, SiteVariables.Specialization))
{
success++;//try to insert in the db
} …Run Code Online (Sandbox Code Playgroud) 我正在使用Android Studio并在格式化代码时遇到问题.如果有一个语句分成多行,我需要将其格式化为单行语句,我不能使用(Ctrl + Alt + L).代码未使用该快捷方式格式化为单行.
我尝试将右边距(设置 - >编辑器 - >代码样式)的值更改为更高的数字,但这也不起作用.
如何将代码格式化为单行?
谢谢.
java ×5
android ×4
asp.net ×1
checkbox ×1
constructor ×1
gboard ×1
gridview ×1
jcombobox ×1
overriding ×1
renderscript ×1
static ×1
swing ×1