What is an array?
An array is a data structure that contains
several variables of the same type.
What are the 3 different types of arrays?
1. Single-Dimensional
2. Multidimensional
3. Jagged
What is Jagged Array?
A jagged array is an array of arrays.
Are arrays value types or reference types?
Arrays are reference types.
What is the base class for Array types?
System.Array
Can you use foreach iteration on arrays in
C#?
Yes,Since array type implements
IEnumerable, you can use foreach iteration on all arrays in C#.
-------------
Basic C# Interview Questions on strings
What is the difference between string
keyword and System.String class?
string keyword is an alias for Syste.String
class. Therefore, System.String and string keyword are the same, and you can
use whichever naming convention you prefer. The String class provides many
methods for safely creating, manipulating, and comparing strings.
Are string objects mutable or immutable?
String objects are immutable.
What do you mean by String objects are
immutable?
String objects are immutable means, they
cannot be changed after they have been created. All of the String methods and
C# operators that appear to modify a string actually return the results in a
new string object. In the following example, when the contents of s1 and s2 are
concatenated to form a single string, the two original strings are unmodified.
The += operator creates a new string that contains the combined contents. That
new object is assigned to the variable s1, and the original object that was
assigned to s1 is released for garbage collection because no other variable
holds a reference to it.
string s1 = "First String ";
string s2 = "Second String";
// Concatenate s1 and s2. This actually
creates a new
// string object and stores it in s1,
releasing the
// reference to the original object.
s1 += s2;
System.Console.WriteLine(s1);
// Output: First String Second String
What will be the output of the following
code?
string str1 = "Hello ";
string str2 = s1;
str1 = str1 + "C#";
System.Console.WriteLine(s2);
The output of the above code is
"Hello" and not "Hello C#". This is bcos, if you create a
reference to a string, and then "modify" the original string, the
reference will continue to point to the original object instead of the new
object that was created when the string was modified.
What is a verbatim string literal and why
do we use it?
The "@" symbol is the verbatim
string literal. Use verbatim strings for convenience and better readability
when the string text contains backslash characters, for example in file paths.
Because verbatim strings preserve new line characters as part of the string
text, they can be used to initialize multiline strings. Use double quotation
marks to embed a quotation mark inside a verbatim string. The following example
shows some common uses for verbatim strings:
string ImagePath =
@"C:\Images\Buttons\SaveButton.jpg";
//Output: C:\Images\Buttons\SaveButton.jpg
string MultiLineText = @"This is
multiline
Text written to be in
three lines.";
/* Output:
This is multiline
Text written to be in
three lines.
*/
string DoubleQuotesString = @"My Name
is ""Vankat.""";
//Output: My Name is "Vankat."
---------------
More C# interview questions on strings
Will the following code compile and run?
string str = null;
Console.WriteLine(str.Length);
The above code will compile, but at runtime
System.NullReferenceException will be thrown.
How do you create empty strings in C#?
Using string.empty as shown in the example
below.
string EmptyString = string.empty;
What is the difference between
System.Text.StringBuilder and System.String?
1. Objects of type StringBuilder are
mutable where as objects of type System.String are immutable.
2. As StringBuilder objects are mutable,
they offer better performance than string objects of type System.String.
3. StringBuilder class is present in
System.Text namespace where String class is present in System namespace.
How do you determine whether a String
represents a numeric value?
To determine whether a String represents a
numeric value use TryParse method as shown in the example below. If the string
contains nonnumeric characters or the numeric value is too large or too small
for the particular type you have specified, TryParse returns false and sets the
out parameter to zero. Otherwise, it returns true and sets the out parameter to
the numeric value of the string.
string str = "One";
int i = 0;
if(int.TryParse(str,out i))
{
Console.WriteLine("Yes string contains Integer and it is " +
i);
}
else
{
Console.WriteLine("string does not contain Integer");
}
What is the difference between int.Parse
and int.TryParse methods?
Parse method throws an exception if the
string you are trying to parse is not a valid number where as TryParse returns
false and does not throw an exception if parsing fails. Hence TryParse is more
efficient than Parse.
No comments:
Post a Comment