我可以做这个:
import java.util.ArrayList;
public class Array {
public static void main(String args[]){
ArrayList<String> myList = new ArrayList<String>();
myList.add("S");
}
}
Run Code Online (Sandbox Code Playgroud)
但是我不能这样做:
import java.util.ArrayList;
public class Array {
ArrayList<String> myList = new ArrayList<String>();
myList.add("S");
}
Run Code Online (Sandbox Code Playgroud)
为什么我必须包含主要方法?
如果name声明final,为什么我仍然可以调用name.append,输出是:shreya?我认为一旦分配了值,就无法更改最终变量?
public class Test1 {
final static StringBuilder name = new StringBuilder("sh");
public static void main(String[] args) {
name.append("reya");
System.out.println(name);
}
}
Run Code Online (Sandbox Code Playgroud) 编辑:我不知道为什么讨厌这个问题,但也许是因为我的问题混乱.我故意用来/*+ ORDERED */控制执行的顺序并改变FROM子句中表的顺序.我想知道为什么执行时间可以改变.是因为连接顺序吗?是因为桌子大小?希望这可以消除混乱.
所以我只是在玩SQL查询并实现以下内容:如果我在FROM子句中更改表的顺序,则执行时间可能会有很大差异.以下查询在大约0.966秒内运行.但如果我转到OrderDetails d最后一个FROM条款,执行只有0.573秒!这有什么原因吗?我当时正在使用ORACLE SQL Developer
SELECT /*+ ORDERED */
su.CompanyName, CategoryName, ProductName, c.CompanyName, c.country,
FirstName, LastName, Quantity, d.UnitPrice, sh.CompanyName
FROM
OrderDetails d, Suppliers su, Shippers sh, Categories t, Products p,
Employees e, Customers c, orders o
WHERE
t.CategoryID = p.CategoryID
AND c.CustomerID = o.CustomerID
AND e.EmployeeID = o.EmployeeID
AND o.OrderID = d.OrderID
AND p.ProductID = d.ProductID
AND sh.ShipperID = o.ShipVia
AND su.SupplierID = p.SupplierID
AND LOWER(ProductName) Like '%lager%'
AND LOWER(c.city) …Run Code Online (Sandbox Code Playgroud) 打印出以下代码 1,2,3,如果我更改int i = 3;它将打印出来3.我想知道这背后的原因.我使用调试器,似乎i = 3它转到案例3并打印出3然后程序终止.我相信,何时i=5,它default是否意味着case 1,case 2 and case 3所有属于该default条款?
int i = 5;
switch(i){
default:
case 1:
System.out.println(1);
case 2:
System.out.println(2);
case 3:
System.out.println(3);
}
Run Code Online (Sandbox Code Playgroud)
编辑:这个问题来自测试,它要求输出此代码.所以我试图找出输出为什么1,2,3,我理解break;是需要的,但这不是我想要的答案.
我注意到在对spring或spring mvc使用批注时,一些程序员会给批注命名。例如:
@Repository("customerRepository")
public class CustomerRepositoryImpl implements CustomerRepository{
}
Run Code Online (Sandbox Code Playgroud)
我相信该类的功能相同,而没有给出@Repository名称。是否存在将注释命名为有用的情况?
所以我知道两个事实:
1.由于自动装箱, Integer i = 9; i它仍然被认为是对象类型,而不是原始类型.
2.在一个try-catch-finally块中,finally可以修改块返回的值catch只有catch块返回一个对象,而不是原始数据.
那么为什么以下代码仍会打印出来:
10
Run Code Online (Sandbox Code Playgroud)
当finally假设修改returnValto时20因为returnVal不是原始数据类型?
public class test1 {
Integer getInt() {
Integer returnVal = 10;
try {
//some code here that will cause an exception
}
catch(Exception e) {
return returnVal;
}
finally {
returnVal += 10;
}
return returnVal;
}
public static void main(String[] args) {
test1 tes = new test1();
System.out.println(tes.getInt());
}
}
Run Code Online (Sandbox Code Playgroud) 所以我有一个List<String> L1 = new ArrayList<>()以下字符串作为元素:
如何list按元素的大小排序,以便在最终状态L1应该是这样的:
我尝试过使用Collections.sort,但按字母顺序排序,这显然不是我想要的.
下面的代码感谢Vadim Gremyachev。我的目标是使用授予用户对某些SharePoint文件夹的访问权限CSOM。我试图实现的目标是访问称为的库JZhu,在JZhu库内部,我有两个文件夹folder1和folder2。我正在尝试向授予Reader许可folder1。到目前为止,该代码无法正常工作,因为在第6行出现异常:
字段或属性“ ListItemAllFields”不存在
ClientContext context = new ClientContext("http://myRealUrl");
Principal user = context.Web.EnsureUser(@"myLoginAccout");
var folder = context.Web.GetFolderByServerRelativeUrl("JZhu/folder1");
var roleDefinition = context.Site.RootWeb.RoleDefinitions.GetByType(RoleType.Reader); //get Reader role
var roleBindings = new RoleDefinitionBindingCollection(context) { roleDefinition };
folder.ListItemAllFields.BreakRoleInheritance(true, false); //line 6
folder.ListItemAllFields.RoleAssignments.Add(user, roleBindings);
context.ExecuteQuery();
Run Code Online (Sandbox Code Playgroud) 所以我有这样的事情:
char cr = "9783815820865".charAt(0);
System.out.println(cr); //prints out 9
Run Code Online (Sandbox Code Playgroud)
如果我这样做:
int cr = "9783815820865".charAt(0);
System.out.println(cr); //prints out 57
Run Code Online (Sandbox Code Playgroud)
据我所知,焦炭和INT之间的转换不是简单地从'9'到9.我的问题是现在我只需要保持9作为int值,而不是57.如何获得值9而不是57作为int类型?
我有一个.txt文件,其中包含:
123456
45789
check
check
Run Code Online (Sandbox Code Playgroud)
我想替换check为now,我写了下面的代码,但结果并不像我预期的那样:
123456
45789
now
nowheck
Run Code Online (Sandbox Code Playgroud)
我想知道为什么最后一行成了nowheck.
我的代码:
StreamReader reader = new StreamReader(File.OpenRead(@"C:\Users\jzhu\Desktop\test1.txt"));
string fileContent = reader.ReadToEnd();
reader.Close();
fileContent = fileContent.Replace("check", "now");
StreamWriter writer = new StreamWriter(File.OpenWrite(@"C:\Users\jzhu\Desktop\test1.txt"));
writer.Write(fileContent);
writer.Close();
Run Code Online (Sandbox Code Playgroud) java ×7
c# ×2
annotations ×1
arraylist ×1
char ×1
default ×1
element ×1
final ×1
int ×1
io ×1
list ×1
oracle ×1
permissions ×1
sharepoint ×1
sorting ×1
spring ×1
spring-mvc ×1
sql ×1
try-catch ×1