java - 使用构造函数作为方法参数

标签 java methods arraylist parameters constructor

我正在编写一个类来构建 SQL 表创建语句。我想做的是调用类似于 createTable(String tableName ColAndTypes... ct ) 的方法。当我编写该方法时,我没有收到任何编译错误。当我调用该方法时,我在将值传递到该方法时遇到问题,我认为这是因为我的语法错误,并且我不确定如何修复它。我想知道您是否可以查看我提供的示例并让我知道我需要做什么来修复它。非常感谢您的帮助!

import java.util.*;
public class foo
{
public class bar{
    public String sBar1, sBar2;
    public bar(){
        sBar1 = "null";
        sBar2 = "null";
    }
    public bar(String sBar1, String sBar2){
    this.sBar1 = sBar1;
    this.sBar2 = sBar2;
    }
}

String sFoo;
List<bar> bi;

public foo(){
    sFoo = "null";
    bi = new bar();
}
public foo(Strinf sFoo, bar bi){
    this.sFoo = sFoo;
    this.bi = bi;
}

public void runFooBar(String sFoo, bar... barArgs)
{
    this.sFoo = sFoo;
    for(bar x:barArgs){System.out.Println(bi.get(x).sBar1   + ":" + bi.get(x).sBar2);}
}

public static void main(String[] args)  
{
    foo fi = new foo();
    fi.runFooBar("foo 1", ("1 sBar1","1 sBar2"),("2 sBar1 ","2 sBar2"))

}//end main

}//end class

最佳答案

我不完全确定您要做什么,但这可以修复您的语法错误。

import java.util.ArrayList;
import java.util.List;

public class Foo {
    public static class Bar {
        public String sBar1, sBar2;

        public Bar(String sBar1, String sBar2) {
            this.sBar1 = sBar1;
            this.sBar2 = sBar2;
        }
    }

    String sFoo;
    List<Bar> bi;

    public Foo() {
        bi = new ArrayList<>();
    }

    public Foo(String sFoo, List<Bar> bi) {
        this.sFoo = sFoo;
        this.bi = bi;
    }

    public final void runFooBar(String sFoo, Bar... barArgs) {
        this.sFoo = sFoo;
        for (Bar x : barArgs) {
            System.out.println(x.sBar1 + ":" + x.sBar2);
        }
    }

    public static void main(String[] args) {
        Foo fi = new Foo();
        fi.runFooBar("foo 1", new Bar("1 sBar1", "1 sBar2"), new Bar("2 sBar1", "2 sBar2"));

    }//end main
}//end class

关于java - 使用构造函数作为方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22737789/

相关文章:

c# - 通过套接字动态调用方法

java - ArrayList.remove() 没有删除对象

java - 如何在聊天中显示超链接以打开浏览器 Intent

java - 为什么这段代码会抛出 IOException?

java - 是否有 OSGi Web 服务/SOAP 客户端?

java - 当任何一个 ListArray 具有重复元素时,计算 ListArray 的数量

Android:如何从 listView 和 arrayAdapter 中删除项目

java - 在Java中使用正则表达式在给定段落中查找 'wh'句子

JavaScript 数组#map : index argument

Java Android : Calling a Method