Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java de>clone()方法(使用深度克隆-原型设计模式) 公共类秩序{ 私有列表项=新的ArrayList(); 公共秩序克隆(){ 订单newOrder=新订单(); 对于(项目原始名称项:this.items){ Item newItem=新项(); newItem.setPrice(originalItem.getPrice()); newOrder.items.add(newItem); } 返回新订单; }_Java_Php - Fatal编程技术网

Java de>clone()方法(使用深度克隆-原型设计模式) 公共类秩序{ 私有列表项=新的ArrayList(); 公共秩序克隆(){ 订单newOrder=新订单(); 对于(项目原始名称项:this.items){ Item newItem=新项(); newItem.setPrice(originalItem.getPrice()); newOrder.items.add(newItem); } 返回新订单; }

Java de>clone()方法(使用深度克隆-原型设计模式) 公共类秩序{ 私有列表项=新的ArrayList(); 公共秩序克隆(){ 订单newOrder=新订单(); 对于(项目原始名称项:this.items){ Item newItem=新项(); newItem.setPrice(originalItem.getPrice()); newOrder.items.add(newItem); } 返回新订单; },java,php,Java,Php,现在应该很清楚,如何使用foreach, 希望它对Java中的示例foreach()(与示例一样)clone()方法(使用深度克隆-原型设计模式)有所帮助 公共类秩序{ 私有列表项=新的ArrayList(); 公共秩序克隆(){ 订单newOrder=新订单(); 对于(项目原始名称项:this.items){ Item newItem=新项(); newItem.setPrice(originalItem.getPrice()); newOrder.items.add(newItem); }

现在应该很清楚,如何使用foreach, 希望它对Java中的示例
foreach()
(与示例一样)
clone()
方法(使用深度克隆-原型设计模式)有所帮助

公共类秩序{
私有列表项=新的ArrayList();
公共秩序克隆(){
订单newOrder=新订单();
对于(项目原始名称项:this.items){
Item newItem=新项();
newItem.setPrice(originalItem.getPrice());
newOrder.items.add(newItem);
}
返回新订单;
}
现在应该很清楚,如何使用foreach,
希望它能有所帮助

这与Zend Framework有什么关系?这与Zend Framework有什么关系?谢谢,第二种方法我有1)$string='A realm=“1234”,B=“343434DF323423423”,C=“300.00”,D=“loopback”;;2)它会进行方法解析('realm=“1234”…);3)然后我有数组来获得$result['realm']4)它有1234个值,然后我用它来生成最后一个字符串。您好,您可以再次拆分它,然后循环遍历每个键和值。然后拆分键和值并将它们添加到映射中。您只需删除“'s from the value.这可能是一个低效的方法,可能尝试使用正则表达式以较少的实际代码将其过滤掉。谢谢,我更新了上面的第二个方法,请看一看,您在java中是如何做到这一点的?谢谢,第二个方法我有1)$string='a realm=“1234”,B=“343434DF323423423”,C=“300.00”,D=“loopback”;2)它转到方法解析('realm=“1234”…);3)然后我有一个数组来获得一个值,比如$result['realm']4)它有1234个值,然后我用它来生成一个最后的字符串。嗨,你可以再次拆分它,然后循环遍历每个键和值。然后拆分键和值,并将它们添加到一个映射中。你只需要删除“”的值。这可能是一个低效的方法,可能尝试使用正则表达式以较少的实际代码将其过滤掉。谢谢,我更新了上面的第二个方法,请看一看,您在java中是如何做到这一点的?foreach for list与数组
for(ClassOfItem item:NameOfList){item.method();}
foreach($key=>$value的数组)和for(Object obj:array)到底有什么相同之处?它们的编写方式不同。我指的是Java中的数组的foreach和Java中的列表的foreach-您只写过数组,列表的实现看起来是相同的:)和
foreach($key=>$value的数组)
类似于Java:
Map
中的foreach for list与数组的外观相同
for(ClassOfItem item:NameOfList){item.method();}
foreach($array as$key=>$value)和for(Object obj:array)到底有什么相同之处。它们的编写方式不同。我指的是Java中数组的foreach和Java中列表的foreach-您只提到了数组,列表的实现看起来是一样的:)和
foreach($key=>$value的数组)
类似于Java中的
Map
1. PHP:
  /** 
   * @return: Array
   */
    public function parse($digest) 
    {
      $array = array();
      $parts = explode(", ", $digest);

      foreach ($parts as $x) 
      {
       $bits = explode("=", $x);
       $data[$bits[0]] = str_replace('"','', $bits[1]);
      }

      return $array;
    }

Java (updated):
  private String[] parse(String digest)
  {
    Map<String,String> array = new HashMap<String, String>();
    String[] parts = digest.split(", ");

    for (String x:parts)
    {
      String[] bits = x.split("=");
      array.put(bits[0], bits[1].replace( '"','' )); // later will apply regex
    }

    return array; // incompatible types
  }



2. PHP:
  /** 
   * @return: String
   */
  public function response($text, $user, $pass, $httpmethod, $uri) 
  {        
      list($dummy_digest, $value) = split(' ', $text, 2);    
      $x = $this->parse($value);

      $realm = $x['realm'];
      if ($x['qop'] == 'auth') 
      {
        ...
      }

      $base  = "{$realm}, {$x['realm']}";
      //"Digest username="1", realm="1", nonce="xxxxxx", uri="abc", response="abc", qop="auth", algorithm="MD5", cnonce="", nc="1"";
      return $base;

  }


Java problem:
   public String response(String text, String user, String pass, String httpmethod, String uri)
   {  
      // how to do such list() like php?
      return "Digest username="1", realm="1", nonce="xxxxxx", uri="abc", response="abc", qop="auth", algorithm="MD5", cnonce="", nc="1"";
   } 
Map<String, String> key_map = new HashMap<String, String>();
String[] parts_of_string = "var=test, var2=test2".split(", ");
for(String part : parts_of_string) {
    String[] key_and_value_parts = part.split("=");
    key_map.put(key_and_value_parts[0], key_and_value_parts[1]);
    System.out.println(key_and_value_parts[0] + " <-> " + key_and_value_parts[1]);
}
private static Map<String, String> parse(String digest) {
    String[] parts = digest.split(", ");
    Map<String, String> map = new HashMap<String, String>();
    for (String x : parts) {
        String[] bits = x.split("=");

        //Remove "'s here if you want to keep them in the string

        map.put(bits[0], bits[1]);
    }
    return map;
}
Map<String, String> parsed_map = parse("A realm=\"1234\", B=\"3434df323423423\", C=\"300.00\", D=\"loopback\"'");
String info = parsed_map.get("B");
System.out.println(info);
public class Order {

private List<Item> items = new ArrayList<Item>();

public Order clone() {
    Order newOrder = new Order();
    for (Item originalItem : this.items) {
        Item newItem = new Item();
        newItem.setPrice(originalItem.getPrice());
        newOrder.items.add(newItem);
    }
    return newOrder;
}