当前位置: 首页 > 面试题库 >

相当于PHP的foreach的java和python($ array as $ key => $ value)

汝志
2023-03-14
问题内容

在php中,可以使用以下关联数组处理状态名称及其缩写的列表:

<?php
    $stateArray = array(
        "ALABAMA"=>"AL",
        "ALASKA"=>"AK",
        // etc...
        "WYOMING"=>"WY"
    );

    foreach ($stateArray as $stateName => $stateAbbreviation){
        print "The abbreviation for $stateName is $stateAbbreviation.\n\n";
    }
?>

输出(保留键顺序):

The abbreviation for ALABAMA is AL.

The abbreviation for ALASKA is AK.

The abbreviation for WYOMING is WY.

编辑:请注意,数组元素的顺序保留在php版本的输出中。使用HashMap的Java实现不能保证元素的顺序。Python中的字典也没有。

如何在java和python中完成?我只能找到在给定键的情况下提供值的方法,例如python的方法:

stateDict = {
    "ALASKA": "AK",
    "WYOMING": "WY",
}

for key in stateDict:
    value = stateDict[key]

编辑:基于答案,这是我在python中的解决方案,

# a list of two-tuples
stateList = [
    ('ALABAMA', 'AL'),
    ('ALASKA', 'AK'),
    ('WISCONSIN', 'WI'),
    ('WYOMING', 'WY'),
]

for name, abbreviation in stateList:
    print name, abbreviation

输出:

ALABAMA AL
ALASKA AK
WISCONSIN WI
WYOMING WY

这正是所需要的。


问题答案:

在Python中:

for key, value in stateDict.items(): # .iteritems() in Python 2.x
    print "The abbreviation for %s is %s." % (key, value)

在Java中:

Map<String,String> stateDict;

for (Map.Entry<String,String> e : stateDict.entrySet())
    System.out.println("The abbreviation for " + e.getKey() + " is " + e.getValue() + ".");


 类似资料:
  • 问题内容: 在php中,可以使用以下关联数组处理状态名称及其缩写的列表: 输出(保留键顺序): 编辑:请注意,数组元素的顺序保留在php版本的输出中。使用HashMap的Java实现不能保证元素的顺序。Python中的字典也没有。 如何在Java和python中完成?我只找到给定键的提供值的方法,例如python的方法: 编辑:基于答案,这是我在python中的解决方案, 输出: 这正是所需要的。

  • 问题内容: 我在php中将以下语句转换为。 我需要在另一个程序中做同样的事情吗? 有任何想法吗 ? 干杯, 问题答案: 该模块具有,它可以满足您的需求。

  • 问题内容: 我正在将应用程序从PHP迁移到Java,并且在代码中大量使用了正则表达式。我遇到了PHP中似乎没有Java等效项的某些问题: 对于正则表达式中的每个匹配项,它都会调用一个函数,该函数将匹配文本作为参数传递给该函数。作为示例用法: 用Java做到这一点的理想方法是什么? 问题答案: 我不知道Java内置有什么类似的东西。您可以使用Matcher类轻松滚动自己的游戏: 然后致电: 请注意,

  • 问题内容: 是否有Python类或模块实现类似于BitSet的结构? 问题答案: 标准库中没有任何内容。尝试: http://pypi.python.org/pypi/bitarray

  • 问题内容: 我正在寻找一个等效于此php调用的Java: 我使用java.crypto.Mac尝试了此操作,但两者不同意: 键=“ secret”和test =“ test”的输出似乎不匹配。 问题答案: 实际上,他们确实同意。 正如Hans Doggen已经指出的那样,除非将raw输出参数设置为true,否则PHP使用十六进制表示法来输出消息摘要。 如果要在Java中使用相同的符号,可以使用类似

  • 问题内容: 我是Python的长期用户,并且非常喜欢使用字典的方式。它们非常直观且易于使用。是否有与python字典等效的Java?我听说有人在使用哈希图和哈希表。有人可以解释使用哈希表和哈希图与python字典的异同吗? 问题答案: Python的类是Python文档非正式地称为“ 映射类型 ”的实现。在内部,使用哈希表实现。 Java的类是接口的实现。在内部,使用哈希表实现。 语法上有一些细微