Running Serial and LCD in Tandem

I am trying to run serial and LCD in the setup function. Here is my code:

void setup()
{
  Serial.begin(9600);

  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

On my LCD, I am not seeing anything. I can provide my full code, if need be. Just wasn't sure why these would be conflicting.

The problem is in the code you didn't post. Where is the declaration for lcd? Which library is this using?

Is this a serial LCD? You didn't actually say. But yes, in general, trying to run a serial LCD and the Serial Monitor won't work on many Arduinos. The Due, Leonardo, Micro and Teensy don't have this problem.

/*4x4 Matrix Keypad connected to Arduino
  This code prints the key pressed on the keypad to the serial port*/

#include <Keypad.h>
using namespace std;
#include <LiquidCrystal.h>

LiquidCrystal lcd(1, 0, 13, 12, 11, 10);
const byte numRows = 4; //number of rows on the keypad
const byte numCols = 4; //number of columns on the keypad
int numChars = 0;

//keymap defines the key pressed according to the row and columns just as appears on the keypad
char keymap[numRows][numCols] =
{
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};

//Code that shows the the keypad connections to the arduino terminals
byte rowPins[numRows] = {9, 8, 7, 6}; //Rows 0 to 3
byte colPins[numCols] = {5, 4, 3, 2}; //Columns 0 to 3

//initializes an instance of the Keypad class
Keypad myKeypad = Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);

void setup()
{
  Serial.begin(9600);

// set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

//If key is pressed, this key is stored in 'keypressed' variable
//If key is not equal to 'NO_KEY', then this key is printed out
//if count=17, then count is reset back to 0 (this means no key is pressed during the whole keypad scan process
void loop()
{
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis() / 1000);
  
  char keypressed = myKeypad.getKey();
  char keys[5];

  if (keypressed != NO_KEY)
  {
    Serial.print(keypressed);
    keys[numChars] = keypressed;
    numChars++;
    
  }
}

Was afraid of that... so that leads me to another question....

I have no more Digital ports left on my uno. Many are already being used by a keypad. Is there any way to expand this, or do I need to upgrade to a different device to be able to use both the keypad and the LCD?

Use the analog pins; they can be used as digital IO.