我是 google 协议缓冲区的新手,所以我尝试了 Java 教程,一切顺利,直到我尝试创建协议类的实例。所以我尝试制作自己的 proto 文件,但我遇到了同样的问题。问题出在这段代码中:
AddressBook.Builder address = new AddressBook.newBuilder();
Run Code Online (Sandbox Code Playgroud)
在 newBuilder() 部分,我收到了找不到符号错误。在 protoc 生成的文件中的注释中,它说使用 newBuilder() 来创建类的实例,但我找不到问题。有谁知道这个问题并且有解决方案吗?
我想在for循环中从类中创建几个对象.但我不知道如何编码.我写的内容创建了一个新对象,但它覆盖了前一个对象.
package assginment1_version4;
import java.util.*;
public class Client {
public static void main (String[] args) {
System.out.println ("this is a bill database");
System.out.println ("add a user?(Y/N)");
Scanner input = new Scanner(System.in);
String answer = input.nextLine ();
ArrayList ary = new ArrayList ();
for (int i=1 ; i < 100; i++) {
if (answer.equalsIgnoreCase("y")) {
Bill bill1 = new Bill();
System.out.println("user first name:");
bill1.setFname (input.nextLine());
System.out.println("user Last name:");
bill1.setLname (input.nextLine());
System.out.println ("add a user?(Y/N)");
answer = input.nextLine ();
} else if …Run Code Online (Sandbox Code Playgroud) 长话短说,我需要一个可以是不同类型的数组列表(int,double,String,byte等).现在问题是我已经使用了一个未指定的ArrayList对象,但每次从ArrayList中检索一个数组时,我都将它转换为我想要的数组类型,例如((double[]) arraylist.get(j))[i]然后做我必须做的事情.
但我担心的是:这是一个将迭代数百次的程序,我觉得这是非常低效和缓慢的.宁愿只有一个参考列表,而不是需要不断的转换.因此,任何有关替代品的想法都将受到赞
考虑一个简单的集合,在一次迭代中搜索最小值和最大值:
val v = Vector (2, 1, 3, 5, 4)
val mima = (v(0), v(0))
val mami = (mima /: v) {case ((a, b), c) => if (c<a) (c, b) else if (c>b) (a, c) else (a, b)}
Run Code Online (Sandbox Code Playgroud)
到目前为止,如此简单。如果我用三元运算符 (X ? Y : Z) 替换 if/else,则不起作用;我收到一个错误:
val mami = (mima /: v) {case ((a, b), c) => (c<a) ? (c, b) : (c>b) ? (a, c) : (a, b)}
<console>:1: ';' expected but : found.
Run Code Online (Sandbox Code Playgroud)
在最后一个冒号。添加括号没有帮助:
val mami = (mima …Run Code Online (Sandbox Code Playgroud) public abstract class Master
{
public void printForAllMethodsInSubClass()
{
System.out.println ("Printing before subclass method executes");
System.out.println ("Parameters for subclass method were: ....");
}
}
public class Owner extends Master {
public void printSomething () {
System.out.println ("This printed from Owner");
}
public int returnSomeCals ()
{
return 5+5;
}
}
Run Code Online (Sandbox Code Playgroud)
不搞乱子类的方法......是否可以printForAllMethodsInSubClass()在子类的方法执行之前执行?
更新:
使用AspectJ/Ruby/Python ......等是否也可以打印参数?以上代码格式如下:
public abstract class Master
{
public void printForAllMethodsInSubClass()
{
System.out.println ("Printing before subclass method executes");
}
}
public class Owner extends Master {
public …Run Code Online (Sandbox Code Playgroud) 我正在编写一些简单的代码来解析文件并返回行数,但是eclipse中的小红框不会消失所以我假设我触发了一个无限循环.我正在阅读的文本文件只有10行......这是代码:我做错了什么?
import java.io.*;
import java.util.Scanner;
public class TestParse {
private int noLines = 0;
public static void main (String[]args) throws IOException {
Scanner defaultFR = new Scanner (new FileReader ("C:\\workspace\\Recommender\\src\\IMDBTop10.txt"));
TestParse demo = new TestParse();
demo.nLines (defaultFR);
int x = demo.getNoLines ();
System.out.println (x);
}
public TestParse() throws IOException
{
noLines = 0;
}
public void nLines (Scanner s) {
try {
while (s.hasNextLine ())
noLines++;
}
finally {
if (s!=null) s.close ();
}
}
public int getNoLines () { …Run Code Online (Sandbox Code Playgroud) 我被要求只用永无止境的循环打印2的倍数.
尝试:
import java.util.Scanner;
public class Infiniteloop {
public static void main (String [] args)
{
Scanner input=new Scanner (System.in);
int number,x;
System.out.print("Enter a number");
number=input.nextInt();
if(number%2==0)
{
while(number>=0)
{
x= (++number);
System.out.println(x);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我只能使用while循环.所以我试着设置2的余数等于零.我尝试使用计数器,但它不会增加它.保持打印出零.我需要一些帮助.谢谢.
我有一个集合的ArrayList,我想在这个ArrayList of Sets中找到唯一的集合.
请帮我解决这个问题.
什么是运行时间lastIndexOf为ArrayLists在Java中?
我正在研究 Java。我有一个日期,例如:20120328。
年份是 2012,月份是 03,天是 28。
我想将其转换为yyyy-MM-dd格式。
我已经尝试过了,但它不起作用。
怎么做?